brainCloud Product Updates logo
Back to Homepage Subscribe to Updates

Product Updates

See the latest features, improvements, and product updates

Labels

  • All Posts
  • release
  • Announcement
  • Improvement
  • Fix
  • blog

Jump to Month

  • March 2025
  • January 2025
  • November 2024
  • September 2024
  • May 2024
  • February 2024
  • November 2023
  • September 2023
  • July 2023
  • April 2023
  • March 2023
  • February 2023
  • January 2023
  • December 2022
  • November 2022
  • July 2022
  • June 2022
  • April 2022
  • March 2022
  • February 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • June 2021
  • May 2021
  • March 2021
  • November 2020
  • September 2020
  • July 2020
  • April 2020
  • February 2020
  • December 2019
  • November 2019
  • September 2019
  • June 2019
  • May 2019
  • February 2019
  • December 2018
  • October 2018
  • July 2018
  • March 2018
  • January 2018
  • December 2017
  • October 2017
  • July 2017
  • June 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • October 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • January 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • June 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015
  • January 2015
  • December 2014
  • November 2014
  • October 2014
  • September 2014
  • August 2014
  • June 2014
  • May 2014
Changelog byAnnounceKit

Create yours, for free!

releaseAnnouncement
9 years ago

Spring has Sprung! (Release 2.22)

Release Highlights

There are a ton of small enhancements and fixes in 2.22 – plus these three big things:

brainCloud Friends

Until now, brainCloud has relied solely upon Facebook for managing a user’s friend relationships. Apps that didn’t want to connect to Facebook were left to implement their own system (via Cloud Code and User Entities). It’s work-able, and some of brainCloud’s best apps have taken this approach – but we thought brainCloud should do more for you.

Release 2.22 adds a new built-in friends system that is directly manageable by the app – while also dynamically merged with network sources (i.e. Facebook and others in the future) if available. This enables apps without Facebook integration to still have friends, and leverage friend-dependent features such as Social Leaderboards.

You’ll find the new API methods in the Friend service, as well as a new Monitoring screen for viewing a list of a user’s friends.

Parse Integration

Last month we delivered our Parse import feature. This release we’ve added the ability to connect to Parse Servers from live brainCloud apps – facilitating the gradual migration of functionality and user data from Parse to brainCloud.

Configuring the Parse connection is simple – go to Design | Integrations | Manage Integrations, and enter your Parse App ID and Reset API Key. You can even enter a custom Parse Server URL if you’ve already migrated from Parse’s servers.

From there, there are two key APIs to integrate into your app:

  • AuthenticateParse() – used to authenticate with brainCloud via a Parse identity.
  • ParseRequest() – makes a web request from brainCloud from Parse

We’ve even built a small sample app to show how these APIs can work together to dynamically migrate your users to brainCloud.

CloudCode Editor Run Tab

We think our CloudCoders will like this one. We’ve added a new Run tab to the editor, so that you can do the full develop, run, debug cycle from within the Cloud Code editor dialog. No more saving and exiting to the API Explorer – only to have to go right back to editor once the system hits that pesky defect!

Now edit, test and debug your code all from the same editor!

Run Tab

Pro tip: The session and log for the Run tab are shared with the API Explorer. This allows you to set up custom scenarios for testing.

Portal Changes

The following changes have been made to the design portal:

  • Design | Core App Info | Advanced Settings
    • Two new Compatibility Settings have been added that allow developers to preserve the old behaviour of the API where user entities and friends relationships are concerned (see API changes, below)
    • The settings default to ON for existing apps (so that nothing breaks), but OFF for new apps.
    • It is recommended that developers test their app, and move the settings to OFF if possible to ensure best compatibility with future updates to the platform going forward.
  • Design | Integrations
    • New Parse integration options have been added to the Manage Integrations page
  • Design | Cloud Code | API Explorer
    • You can now easily copy the json results from any API call by clicking on the ellipsis {…} button at the top of the response.
    • API Explorer calls are now added to the user’s request/response logs (can aid debugging in some scenarios)
  • Design | Cloud Code | Script Editor
    • New Run tab added to allow easy testing and debugging of scripts
    • Click [Quick Authenticate] to create a session with default options
    • Edit the parameters, and then click [Run] to execute the script
    • Note – brainCloud only runs the saved version of a script. If a script has changed and has not yet been saved, it will show an asterix (“*”) in the Editor tab title.
  • Monitoring | Global Monitoring | Recent logs
    • Clicking on a profile id in a log entry now brings you to the Log page of that user in User Monitoring
  • Monitoring | User Monitoring, Select User, Search 
    • We’ve expanded the user search to support all of our identity types, including GameCenter ID (note, it’s the numeric ID that Apple provides), Twitter ID, Steam ID, Parse ID, and more.
  • Monitoring | User Monitoring | Friends
    • We’ve added a new screen to display the friends that a user has. The screen offers a filterable list of both the user’s Facebook friends who also have your app, along with any local brainCloud friends that the app may have added.
  • Monitoring | User Monitoring | Recent Logs
    • Added the script name to the Run Script entries
    • API Explorer initiated calls now appear in the logs
  • Live Lock
    • Better keyboard support for unlocking apps. Clicking the banner now puts the cursor into the password field automatically, and password entry is confirmed by hitting the [Enter] key
    • More buttons are now *disabled* when an app is locked, instead of hidden. This is so that locked features remain discoverable.
  • Server Status
    • You can now easily look up the status of brainCloud’s servers via our new ServerStatus page.  You’ll find the link by the version number in the Portal under the left-hand navigation bar – or just bookmark braincloud.statuspage.io.

API Changes

The following changes have been made to the brainCloud API:

  • Authentication and ReadPlayerState
    • Authenticate() and ReadPlayerState() methods now return the users’ pictureUrl property if available
    • Authenticate() and ReadPlayerState() no longer return the user’s entities by default [see User Entities] section below
  •  BrainCloudWrapper
    • BrainCloudWrapper wraps the authentication and identity portions of the API, simplifying authentication for your apps.
    • Because the wrapper isn’t a core component of the library (and apps aren’t required to use it), it was only available on a few platforms, and wasn’t really documented.
    • It is very useful however, and eliminates some common programming mistakes – so we are now providing it across all platforms (except AS3), and have documented it in its own section of the API documentation.
  • Friends
    • The new friends management methods are: AddFriends() and RemoveFriends(). They are plural because they allow you to add multiple friends in a batch.
    • A new method, FindPlayerByUniversalId() has been added to facilitate looking up potential friends
  • Matchmaking
    • New DisableMatchmaking() api method has been added to all clients
  • Parse Integration
    • You can now authenticate brainCloud users via the AuthenticateParse() method. Pro tip: Once the brainCloud account has been created, you can attach a brainCloud identity (i.e. Universal or Email) via the AttachIdentity() methods.
    • Once authenticated, you can make calls to Parse to retrieve data via the Cloud Code ParseRequest() method.
    • You configure parse configuration from the Design | Integrations | Manage Integrations screen.
  • User Entities
    • Behaviour Change: UserEntities are no longer returned during Authenticate() and ReadPlayerState() calls by default. This is because some apps are actually storing thousands of entities per user, not all of which should be retrieved at once.
    • Apps can preserve the legacy behaviour by enabling the “Return user entites during authenticate and player state methods” flag in the Compatiblity section of the Design | Core App Info | Advanced Settings screen. This setting defaults to “on” for existing apps to preserve compatibility.
    • New GetList() and GetListCount() methods have been added. These methods allow for more complex queries of user entities.
    • GetSharedEntityForPlayerId() method added – previously you could only retrieve *all* shared entities in a list.

Miscellaneous Changes / Fixes

  • Infrastructure updates
    • Improvements to Push Notifications architecture for increased performance and reliability
    • Upgraded our TLS libraries to use 1.1+ for improved security when connecting to our billing system.
  • Removed methods – the following previously-deprecated methods have been removed from the 2.22 client libraries:
    • Removed ReadFriendsWithApplication() – use ListFriends() instead
    • Removed GetGlobalLeaderboard() – use GetGlobalLeaderboardPage() instead
    • Removed GetLeaderboard() – use GetSocialLeaderboard() instead
    • Removed RegisterPushNotificationDeviceToken with string device parameter – use version with Platform object instead
    • Removed ReadPlayerStatsSubset() with string parameter – use version that takes collection instead
    • Removed ReadAttributes() with string parameter – use version that takes collection instead
    • Removed ReadGlobalStatsSubset() with string parameter – use version that takes collection instead
    • Removed AwardAchievements() with string parameter – use version that takes collection instead
    • Removed UpdateSummaryFriendData() from BrainCloudFriend – use BrainCloudPlayerState version instead
    • Removed GetOneWayPlayers() and GetOneWayPlayersWithFilter() – use the FindPlayers() methods instead
  • Javascript library
    • Added FileUpload capabilities to the Javascript libs – tutorial here
    • Added GenerateGUID() and GenerateNewAnonymousId() to the Javascript libs
  • Unreal libs
    • Updated to support Unreal 4.11
  • Miscellaneous changes, fixes and performance improvements, including:
    • Manually Triggering the forgot password feature for users or other team member’s now bcc’s the Team Member that requested it.
    • ReadFriendPlayerState() method was returning too much information – fixed
    • AB Test ID behaviour has been fixed. The value now remains constant after creation, as intended.
    • Should you want to change the AB Test ID value for testing purposes, however, you now can – via the User Summary screen. Just click the Tester button first.
    • The Global Entities screen has been enhanced to allow you to scroll through an unlimited number of entities
  • Documentation
    • Stats grammar documentation added to the new site
    • C++ examples to the new site
    • BrainCloudWrapper section added to the new site