• 0 Votes
    4 Posts
    167 Views

    FYI - this feature was added in brainCloud 4.13 - https://getbraincloud.com/apidocs/release-4-13/

  • RPG's on BrainCloud?

    Solved General
    3
    0 Votes
    3 Posts
    88 Views

    Hi Chad,

    Sorry for the late reply.

    Yes, brainCloud can handle RPG style games well, it provides a rich set of features that benefits any type of game - includes very flexible multiplayer tech, Our built-in real-time multiplayer services are more based around the idea of shared game experiences that last a finite period of time (i.e. arena shooters, casual multiplayer, etc.). Our matchmaking, lobby services, room server system, etc are all geared toward making this sort of experience easy and inexpensive to build - but also can integrate with 3rd party or custom tech. brainCloud provides support for custom Room Servers that can support any type of custom or 3rd party multiplayer tech. For all these characters related data (user data), you can use User Entity or Custom Entity to store and trace them. The end-user profileId and anonymousId are stored securely in the client library wrapper on user devices. Users' IAP items and currency end up “unlocking” “awarding” these to the associated profileId, so that will never be lost. If a player is offline, you need to have some code on your side to handle this situation with the request callbacks, as long as “update()” is not called, it will not process sending packet bundles or process callbacks from the received packets. Shouldn't keep all calls for later. Instead, update player stats once connected, in 1 call.

    Hope that helps!

  • 0 Votes
    20 Posts
    448 Views

    @David-St-Louis-0 @Paul-Winterhalder
    Hi again.
    I would like to debug my server locally, in Unity. I have the _S2S stuff all hooked up as described in the walk through.
    But then I tried to do the following (actual numbers redacted)

    #if UNITY_EDITOR var appId = "00000"; var serverName = "MyServerName"; var secret = "00000000-0000-0000-0000-000000000000"; _lobbyId = "00000:myLobbyTypeId:00"; #else // Load environment variables passed in by brainCloud to our container var appId = Environment.GetEnvironmentVariable("APP_ID"); var serverName = Environment.GetEnvironmentVariable("SERVER_NAME"); var secret = Environment.GetEnvironmentVariable("SERVER_SECRET"); _lobbyId = Environment.GetEnvironmentVariable("LOBBY_ID"); #endif

    However, I am getting a perpetual error:
    #S2S S2S Failed: {"packetId":1,"messageResponses":[{"reason_code":40613,"status_message":"Processing exception: Unrecognized lobby: 00000:myLobbyTypeId:00","status":400}]}

    I even signed up for a Dev+ subscription, just in case that was the problem, per this thread. No luck.

    How can I test my server code locally, while still planning for the full-on S2S Docker container deployment?
    Thanks

  • 0 Votes
    9 Posts
    258 Views

    Sounds good Ali - thanks for the confirmation!

    Paul.

  • 0 Votes
    4 Posts
    115 Views

    No problem - happy to help!

    Paul.

  • 0 Votes
    3 Posts
    209 Views

    Thank you for your answer. Yes, it will be nice to have a separate API but for now, the solution suggested by you works for us.

  • lobbyId ?

    Solved APIs
    6
    0 Votes
    6 Posts
    233 Views

    Oh okay, I understand.
    Yeah I was already trying to use the C++ SDK, and I will also be waiting for the Obj-C one.

    Thank you!

  • 0 Votes
    4 Posts
    166 Views

    Happy to help! 👍

  • Method to access "other user" items

    Solved General
    2
    1 Votes
    2 Posts
    134 Views

    Hi Claudiu,

    It's possible to do this using cloud script... you just need to impersonate the other user...

    Here's an example script that does this - caveat, it only returns the first page of user items.

    Create the script, and set it's test parameters to:

    { "profileId": "www-xxx-yyy-zzzz-123456" }

    (Note - you'll of course want to replace profileId with an id of a user that you want to test with.)

    And here's the code...

    var response = {}; // We need to impersonate another user to make this call var otherSession = bridge.getSessionForProfile( data.profileId ); var otherUserItemsProxy = bridge.getUserItemsServiceProxy( otherSession ); // Now, request the page of items from that proxy var context = { "pagination": { "rowsPerPage": 50, "pageNumber": 1 }, "searchCriteria": {}, "sortCriteria": { "createdAt": 1 } }; var includeDef = true; var itemResult = otherUserItemsProxy.getUserItemsPage( context, includeDef ); if (( itemResult.status == 200) && ( itemResult.data.results.count > 0 )) { response.items = itemResult.data.results.items; } else { response.items = []; } response;

    For convenience I've attached an export of the script. You can import this script into your app from the Design | Cloud Code | Scripts screen.

    Hope that helps!

    Paul.

    RetrieveAnotherUsersItems.ccjs

  • 0 Votes
    5 Posts
    198 Views

    Cheers guys. Thanks for the quick response!

  • Timeouts?

    Solved APIs
    4
    0 Votes
    4 Posts
    212 Views

    Thanks guys! I figured it would be ridiculous if I had to do timeout checks and retries myself 🙂

  • Unity AddressableAssets

    Solved APIs
    4
    0 Votes
    4 Posts
    248 Views

    Follow-up on this...

    My guys have looked into it, and the way we version our global files isn't compatible with this new feature from Unity. Apologies!

    (PS - No plans yet for when/if we'll support it. Certainly tons of folks use an external CDN with brainCloud apps though - so the option is still there for you!)

  • Unity basic setup

    Solved APIs
    5
    0 Votes
    5 Posts
    269 Views

    Cool to see the forums working! 🙂

    I've marked @Panagiotis-Milios more detailed explanation as the accepted solution, but kudos to you @Chris-Brown for pointing it out, and @Panagiotis-Milios for providing the detailed example. Thanks a bunch! 🙂

  • Group system with larger than 50 limit

    Solved APIs
    2
    0 Votes
    2 Posts
    120 Views

    Hi Chris,

    The maximum # of group members is controllable by our support team.

    Just send a request to our support team, indicating the name and appId of the app, and what you'd like the max to be and why. (A short description of your use cases would be helpful - since we just need to review to see if we think there would be any performance gotchas).

    We'll do a quick review and hopefully approve!

    Cheers!

    Paul.

  • [Unity] Authenticated Event ?

    Solved APIs
    2
    0 Votes
    2 Posts
    163 Views

    Hmm, actually Eric, authentication only happens when called directly in brainCloud.

    If you try calling an API and your app isn't authenticated, you'll receive an error - and generally would trigger authentication yourself as part of your error handling.

    Does that make sense?

    Paul.

  • GetMyGroups never returns

    Solved APIs
    2
    0 Votes
    2 Posts
    137 Views

    This error has been since resolved.

    A help article has been made on the groupType page: http://help.getbraincloud.com/en/articles/3272656-design-groups-group-types

    If experience similar problems to this forum topic with our Unity library, ensure brainCloud has been added to a gameObject, and that gameObject is not disabled.

  • Getting public groups only

    Solved APIs
    4
    0 Votes
    4 Posts
    212 Views

    D'oh - bit late on the update, but 4.1 has been released, and you can now search on isOpenGroup (as well as the new groupSummaryData).

    4.1 Release notes here - https://getbraincloud.com/apidocs/release-4-1/

    Cheers!

    Paul.

  • Award currency on new registration

    Solved General
    4
    0 Votes
    4 Posts
    233 Views

    Happy to help! 🙂

    Paul.

  • Modules/Common code scripts?

    Solved Cloud Code
    7
    0 Votes
    7 Posts
    442 Views

    Similar situation here, i had built a micro framework on GameSparks to cover cases that almost every cloud driven game require. This saved huge amount of time working on new games and at the same time sharing code among existing features.
    Please consider this requirement a must have for any serious game development.

  • 2 Votes
    24 Posts
    2k Views

    I just got our iOS Push Notifications working with brainCloud and would like to add a few tips to this thread.

    For the less Mac-Savvy developers like me, here's what it looks like when you only have your certificate with no private key to export as a P12 file:

    Screen Shot 2019-06-19 at 4.02.20 PM.png

    Notice the selected category is [My Certificates]. Certificates in the [Certificates] category have the P12 export option greyed out.

    I am using Unity as a development platform and for some reason my device would only receive Development Push Notifications even when running in Release in Xcode. It's only after uploading to TestFlight that my Production Push Notifications started working.