General

Discuss all the things!

98 Topics 293 Posts
  • brainCloud 5 is alive!

    Pinned
    1
    0 Votes
    1 Posts
    1k Views
    No one has replied
  • Customizing your forum settings...

    Pinned Moved
    1
    1 Votes
    1 Posts
    227 Views
    No one has replied
  • 1 Votes
    7 Posts
    39 Views

    @Paul-Winterhalder I will send a video to you, as it contains some private user data for the example, thanks!

  • Cloud Code not loading in Console

    Solved
    2
    0 Votes
    2 Posts
    34 Views

    In case anyone else had a similar issue...

    There was a Cloudflare-related cert issue associated with a site called cdn.jsdelivr.net.

    As I understand it, the Monaco editor that Portal-X uses for editing source and JSON files (and many other common web-based components) makes use of that site.

    More details on the issue here: https://github.com/jsdelivr/jsdelivr/issues/18565

    The issue was temporary - and seems like it only affected only certain localized regions... (just a guess on my part there).

    Anyway - all good now - and nothing directly related to brainCloud.

    Paul.

  • Memcache in Braincloud

    Unsolved
    2
    0 Votes
    2 Posts
    152 Views

    Hi Nguyen,

    brainCloud makes use of both Memcached and Redis as part of it's architecture - but we do not directly expose these in our APIs.

    What was your use case?

    Paul.

  • Reconnect to room on a Relay Server

    Unsolved
    30
    0 Votes
    30 Posts
    569 Views

    Ciao @Greg-Moulds,
    you rock boy! 🙂
    I tried reducing the "early" launch setting as you suggested and in fact now the waiting time is very short. That was exactly the problem.

    Thanks!

  • How to export all user entities for all users of an app

    Solved
    7
    0 Votes
    7 Posts
    165 Views

    Thank you both for the helpful replies. I am educating myself further and exploring options. Depending on what I decide to pursue as the final option, I may be back 🙂

  • Tournament Rank Rule

    Solved
    3
    0 Votes
    3 Posts
    153 Views

    Hi Paul,

    Yes this answers my question. I guess since the percentage is based on the number of players, I could query the number by checking how many entries there are in a given division leaderboard?

    In any case I'll stick to absolute ranks for now as you suggest. I was looking into percentages to future-proof our client API.

    Thank you for the quick help!

  • 0 Votes
    5 Posts
    159 Views

    All very good points @Panagiotis-Milios !

  • Coming in brainCloud 5.2 - refactored Script Editor!

    Unsolved
    4
    1 Votes
    4 Posts
    158 Views

    Hi Panagiotis,

    Thanks for the feedback!

    That vertical icon bar on the far left is new in 5.2. It was key to allowing us to free up more space - moving the Debug + Log screens to their own pane. (i.e. now the screen is only ever split vertically in 2 - instead of sometimes split into 4 pains - 2 verticle and 2 horizontal).

    The font scale and tab size options were there before too - but are somewhat more discoverable now that we have that cog wheel.

    Glad you like the changes!

  • 0 Votes
    2 Posts
    118 Views

    Hi Kuabs, you can use brainCloud webhooks to achieve this feature, the steps are as follows.

    Create a cloud code script, in this example use the name "webhook_forgotPassword", and paste the following code into the script. "use strict"; function main() { var response = {}; bridge.logDebugJson("Script inputs", data); var userEmail = data.parameters.email; response.stringResponse = "webhook is processing user email reseting..." + data.parameters.email; // validating the user email if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(userEmail)) { // checking if the email is existed in brainCloud users var context = { "pagination": { "rowsPerPage": 20, "pageNumber": 1 }, "searchCriteria": { "emailAddress": userEmail }, "sortCriteria": { "playerName": 1 } }; var userProxy = bridge.getUserServiceProxy(); var postResult = userProxy.sysGetPage(context); if (postResult.data.results.count > 0) { var userProfileID = postResult.data.results.items[0].profileId; // sending password reset email postResult = userProxy.sysSendPasswordResetEmail(userProfileID); if (postResult.status == 200) { response.stringResponse = "password reset email has been sent to user's email:" + userEmail; } else { response.stringResponse = "system error with sending email..."; } } else { response.stringResponse = "user doesn't exist with the email you provided"; } } else { response.stringResponse = "user's email is invalid."; } return response; } main();

    Open Design | Cloud Code | WebHooks page, and create a WebHook link to the script you created from the previous step. Copy down the WebHook URL for the next step.73ee4986-3d38-4694-bac5-d7c4896c99ba-image.png

    Now, you have completed the work from brainCloud. Next, open your client app editor (if you are using Unity), define the WebHook URL as a variable, and link it to your forgotEmail object (could be a link or button in your app) onClick event, making it trigger this URL when the user clicks with Application.OpenURL command. Grab user inputted email and append it as an email parameter to the URL as follows:

    const string passwordResetWebhookUrl = "https://portal.braincloudservers.com/webhook/12832/forgotPassword/6dc675bb-f8b4-495f-ac5e-1f0658bfe09c"; Application.OpenURL(passwordResetWebhookUrl + "?email=" + userEmail);

    Run your app to test, you should get a similar pop-up window as follows once a user clicks the forgotEmail object,
    94dd0dae-7d6e-44c8-ab26-0d57a8544bb4-image.png

    Check the reset email in your test email account...25a6f240-5246-4ba2-a216-e978eaccee8c-image.png

  • UE 5.3

    Unsolved
    2
    0 Votes
    2 Posts
    135 Views

    Hi @shawnryanbruno

    Thanks for pointing out that issue in our readme, you're right there is no BCClient folder, this will be corrected. The readme is referring to the folder contained in the latest .zip release file, current latest release is 5.1.0

    We have a couple example projects that use Unreal 5.3 and the brainCloud client compiles with no issues there. I will need some more information to better assist with the issue you're having.

    Did you get the brainCloud library from the release .zip file or did you download a copy of the repository?

    Can you guide me through the steps you took to get to this issue?

  • 0 Votes
    4 Posts
    166 Views

    @Paul-Winterhalder Amazing! This is perfect for my needs-- thanks so much Paul.

  • 0 Votes
    2 Posts
    125 Views

    Use API blocking in the cloud code category to block all apis from client that write your user entities. Then clients can only write their entities using cloud-code and there you have the total control

  • Custom Room Server Manager

    Unsolved
    7
    0 Votes
    7 Posts
    210 Views

    No problem, glad I could help.

    For the moment we do not have any official documentation on room server managers except for that repository. Do you plan to make your own room server manager? If so we can probably put together some documentation for that. Otherwise for now, the only request you have to account for is that POST request to /findRoomServer as detailed in the source code for the Room Server Manager DevTool. This DevTool is intended to be used to test room servers more easily and have access to their logs faster. But if you plan to make an actual room server manager that can launch and manage multiple servers at once, you can use this tool as a base and build up on it to add logic for managing multiple server instances.

  • 0 Votes
    4 Posts
    212 Views

    I believe this worked @Steve-Jones -- thanks so much for the tip!

  • Can I use Braincloud with Gamemaker?

    Unsolved
    2
    0 Votes
    2 Posts
    127 Views

    I believe that you can integrate the brainCloud C++ library as a third-party library within Gamemaker. brainCloud C++ library can be found here -- https://github.com/getbraincloud/braincloud-cpp

  • 0 Votes
    4 Posts
    222 Views

    @kuabs Exactly. Always use braincloud server time for features that rely on time passed. Also, if you want to modify your recharge rate during gameplay, you might want to consider keeping it in a global entity instead so every user will be affected by it.

  • brainCloud C# library updated (5.1.1)

    Unsolved
    1
    1 Votes
    1 Posts
    133 Views
    No one has replied
  • Async match without opponent

    6
    0 Votes
    6 Posts
    307 Views

    Also looking for this type of functionality, so id +1 this feature request