The team is excited to announce the release of the Beamable Unity SDK version 0.0.123
New Feature – Tournaments
Tournaments allow players to compete on a leaderboard while introducing an element of progression. Tournaments are subdivided into tiers, which are subdivided into stages with defined intervals. Players either advance, regress, or remain in the same stage according to their rank. When this occurs, players are also granted rewards according to their rank in the leaderboard. This can recur indefinitely, or until the tournament ends.
Documentation can be found here: https://docs.beamable.com/docs/tournament-feature
- Implemented Tournaments Client APIs.
- Implemented Tournament Content Definition.
- Implemented Tournaments drag and drop UI.
- Developers can schedule Tournaments.
- Developers can end Tournaments.
- Developers can lookup player participation in Tournaments.
- Tournament rewards are claimable in game.
- Tournaments leaderboards utilize the VirtualList to support many entries.
- Tournaments color palette changes according to Tier (e.g. Bronze, Silver, Platinum, Diamond, etc.).
- Tournaments show an information page.
New Feature – Google Sign-in
In addition to Facebook and Apple sign-in, Beamable now supports Google sign-in on Android devices. This feature will be extended in a future release to support Google sign-in on all devices.
Documentation can be found here: https://docs.beamable.com/docs/adding-google-sign-in
Content System Modifications
Beamable now supports polymorphic content. Content classes can be subclassed and inherit fields and methods from base types. Content references support polymorphism, too. This feature is especially useful for items and player inventory. We have also added the ability for you to “tag” content. Content tags enable you to organize, query, and fetch content across different types. You can set a content’s tags through the Inspector Window. The Content Manager Window has a built in search capability, allowing you to query for content by tag, name, or type. Content can also be downloaded into Unity from the Beamable Cloud.
Documentation can be found here: https://docs.beamable.com/docs/content-manager
- Previously published content can be downloaded back into Unity as scriptable objects.
- Content can be tagged.
- Content Manager Window now supports content filtering by tag, type, or name.
- Content Manager Window now allows content creation in 2019.
- Content Manager Window no longer throws errors on content renaming.
- Content Manager Window arrow directions more accurately represent group state.
- Content Manager Window removes UndoPro dependency. “Undo” support is no longer available for content deletion.
- The Portal view of content no longer displays the content version string.
- The Portal view of content shows content tags.
- The Portal view of content now shows the content type and name on different lines.
- Content classes are now only valid if they have a [ContentType] attribute.
- Content classes can now extend from any class that has a base type of ContentObject.
- Content can be stored anywhere in /Assets/DisruptorEngine/Editor/content, instead of having forced subdirectories.
- The Content Serializer has been rewritten with fewer dependencies.
- The Content Serializer won’t serialize private fields, unless forced.
- The Content Serializer will serialize any field marked with the [SerializeField] attribute, regardless of protection level.
- The Content Serializer will never serialize a field marked with the [IgnoreContentField] attribute, regardless of protection level, or the presence of a [SerializeField] attribute.
- A Content Manifest can be acquired at runtime. The manifest can be filtered by tag, type, or name.
Beamable Portal
In our last package, in the toolbox inspector window, the “Open Portal” button would launch Unity’s internal browser to display the portal but we found this workflow to be lacking. Instead, we will now pop open an external browser to display the portal.
Google Play Support for Unity IAP
Beamable now properly supports Google Play with Unity IAP
Bug Fixes
- Cloud Saving now allows client code to be executed in the event that cloud saving errors
- Cloud Saving is now server-authoritative in the case of a tie-breaker.
- Cloud Saving now allows for multiple functions to be registered on content download.
- Portal can now render items that have no properties.
- Content Objects in Unity that don’t have the Content Attribute no longer render in the Content Manager.
- Fixed out of range exception in ContentPublisher when batch size is less than count.
- Exception no longer thrown on first login in the Account Flow.
- Fixed excessive reimporting of assets in Unity 2019.4+
- Content Links now properly render a property drawer.
- NoConnectivityExceptions should now occur when internet connectivity is available.
- Portal no longer throws invalid token when switching realms.
- Fixed error seen when fetching Stats or any cacheable data.
- Fixed NullReferenceException error in Content Manager on initial open.
- NoConnectivityException error no longer pops up when the user accesses the New Account button.
- Admin Console – Removed case sensitivity and normalized casing of commands.
- Standardized Min/Max Values for Beamable UI windows within Unity
Known Issues
These are issues that could not delay this release, but which we are aware of, and plan to address in a fast-follow patch release.
- Due to a device-specific bug with Cloud Saving, it is currently functional in editor, but disabled on device.
- Tournaments default content (upon creation) contains a badly formatted date string (2020-01-1T12:00:00Z should be 2020-01-01T12:00:00Z).
- Newly created content appears as changed even after being deployed unless it contains base as its first tag.