I agree - and security-wise prefer it to the pre-hook solution we were considering...
We are looking into it.
Jake - I've sent you a question in the support chat - wondering what the timelines for your app are...
brainCloud 4.11 is targeted for release tomorrow...
There are a bunch of features and improvement, including:
You will find all the details here: http://getbraincloud.com/apidocs/release-4-11/
And brainCloud 4.9 is live!
Let us know if you have questions or issues!
brainCloud doesn't really force anyone to do anything - we are a toolbox to be used to build your game.
And we certainly wouldn't try to force bad code.
The recommendation to bundle API calls together into scripts reflect the reality that:
So - we see it as win:win:win - better user experience, better experience for the end-user, and less cost to you.
We encourage you to organize your scripts as makes sense for your application. To help support this - brainCloud allows you to import script functions into your script to be called (
bridge.import()) - or to call other scripts directly (
As for why our pricing is elastic - that is so that the costs we incur from your app match the costs to you. This puts us both on the same side when optimizing your app. The lighter your app, the lower the costs on our end, and we pass those savings onto you!
Hope that helps!
brainCloud 4.9 is coming soon! (i.e. will be released in the next 2-3 weeks).
Here's a quick summary of the new features:
For all the details - see the release notes - https://getbraincloud.com/apidocs/braincloud-4-9/
Any questions or comments - post them here!
(PS - brainCloud 4.9 contains an important change/fix for script path handling. Folks organizing their scripts into folders will want to take note. Of course, there's a compatibility flag so the changes don't take effect until you want them too.)
Sounds like you want to look into our Presence feature.
Presence is designed to let users know when their friends are online. You can think of it like the old Xbox Live friends feature - where you can see which of your friends are online - and optionally what they are doing.
And Presence uses RTT - so users will be notified in realtime when the presence information of a followed user changes.
Presence works with Friends, Groups, and arbitrary lists of users.
More details here - http://getbraincloud.com/apidocs/apiref/#capi-presence
Hope that helps!
The full roadmap on this is still in progress.
We do have an API now that allows you to upload cloud code scripts.
It's part of our Builder API - and you can request it via our support channel.
The script management API is still a V1 version - in that you manage scripts individually. We have plans to evolve the API so that you can upload zipped packaged to be synced with the scripts - in a similar fashion to what you can do via the web portal.
Although this is taking longer than planned, we wanted to ensure that we built the new support on a solid foundation. So we've added cloud code includes, folders, new script management screens, improvements to performance and caching, etc.
The Visual Studio plug-in is still on our radar - we just need to ensure that the proper API foundation is in place.
Anyway - if you are interested in getting ahold of the builder API, definitely message our support team.
brainCloud 4.8.0 is now live!
4.8 adds the following features:
See the full release notes for more details.
Also - head here for the list of prior releases.
Feedback welcome - and happy coding!
Heads up that the upcoming privacy changes in iOS 14.5 will affect pretty much anyone that currently offers Facebook Login for their apps.
To support developers - we are adding support for Facebook Limited Login to brainCloud 4.7 - which will be released this month.
Hope that helps folks!
brainCloud does not currently support processing of refunds.
You could potentially create an owned custom entity collection to store the details of refunded collections in - so that you would have an entry against that user.
Note - you could also use a user entity for such data - but custom entities have the advantage of being globally searchable -- i.e. you can easily search for all refunds in the system.
Note - global entities are less ideal - they don't scale as well. Not recommended for data associated with users that could conceivably scale over time.
You can schedule jobs in brainCloud using the ScheduleRuleScriptMinutes() or ScheduleRunScriptMillisUTC() calls - http://getbraincloud.com/apidocs/apiref/#capi-script-schedulerunscriptminutes
And those jobs can reschedule themselves to run again at another time.
You can find an example scheduler script here: https://getbraincloud.com/apidocs/cloud-code-central/handy-cloud-code-scripts/scriptscheduler-script/
Hope that helps!
brainCloud 4.6 is now live!
The biggest change is that we've upgraded our MongoDB abstraction layers to be compatible with MongoDB 4.X going forward. All without affecting the brainCloud APIs that our customers use.
In addition, there are a few cool new features including:
In addition, there are mucho improvements to the client libraries including:
For all the details, see the release notes here - https://getbraincloud.com/apidocs/release-4-6/
(PS - Also a reminder, anyone moving to the 4.6 libs (from libs earlier than 4.5.6)- if you are using Relay Servers, be sure to upgrade your relay servers as well - instructions in the 4.5.6 release notes - http://getbraincloud.com/apidocs/release-4-5-6/ )
@Travis-Brown-John You can create them manually from the Monitoring menu.
Monitoring | Global Monitoring | Global Entities.
Note - if your app is live, you need to unlock it first. You'll see a bit [+] button to the right of the Bulk actions drop-down.
Hmm - 100Kb is not appropriate for Global Properties. We don't recommend more than 3-4Kb of JSON in a global property, for example.
That said - you can have a bunch of global properties. Lots of folks use them for their tuning data - but more as individual key+value pairs - and smaller JSON blobs. So you can definitely store tuning data there - in more atomic form.
Global Entities are fine for tuning data - just ensure that you can look up your entities using the entityIndexedId. That id is essential for fast lookup.
Global Entities are not good for transactional data or player-owned data - cause the numbers group to large. For those, you definitely want Custom Entities. But if you are talking about reference (i.e. read-only) data with known ids for quick look-ups, then Global Entities should work fine for you.
Hope that helps!