Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New extension: CrazyGames SDK v3 #1552

Closed
3 tasks done
planktonfun opened this issue Feb 23, 2025 · 4 comments · Fixed by #1562
Closed
3 tasks done

New extension: CrazyGames SDK v3 #1552

planktonfun opened this issue Feb 23, 2025 · 4 comments · Fixed by #1562
Assignees
Labels
✨ New extension A new extension

Comments

@planktonfun
Copy link
Contributor

Description

The CrazyGames SDK v3 extension allows developers to integrate CrazyGames' advertising and user authentication systems into their GDevelop games. It enables features such as ad display (video ads and banners), user session management (sign-in, authentication, and profile retrieval), game event tracking (gameplay start/stop, loading events), and user engagement tools (invite links, account linking, and social features).

How to use the extension

Developers can use this extension to:

Monetize games by displaying video ads (midgame and rewarded) and banners.
Track user sessions to check if a user is signed in, retrieve their profile details (username, profile picture), and manage authentication via CrazyGames.
Enhance gameplay experience by detecting ad blockers, generating invite links for multiplayer sessions, and displaying celebratory effects (e.g., confetti).
Optimize game lifecycle tracking by notifying CrazyGames when gameplay starts/stops or when the game is loading.
Encourage user engagement through account linking, social invites, and authentication prompts.
This extension is useful for developers looking to maximize revenue and user interaction while ensuring smooth integration with the CrazyGames platform.

Checklist

  • I've followed all of the best practices.
  • I confirm that this extension can be integrated to this GitHub repository, distributed and MIT licensed.
  • I am aware that the extension may be updated by anyone, and do not need my explicit consent to do so.

What tier of review do you aim for your extension?

Reviewed

Example file

CrazyGamesApiV3.zip

Extension file

CrazyGamesAdApi.zip

@planktonfun planktonfun added the ✨ New extension A new extension label Feb 23, 2025
Copy link
Contributor

👋 Thanks for your submission! We are sorry, but it seems we already have a reviewed extension with that name. Extensions cannot be in both the community and reviewed extensions list at once. If you are trying to update that extension, please ask a member of the extension team for help. If the name clash is a coincidence, please update your original submission post with a new zip file containing your extension with a file name that is not already taken 🙏

@Bouh Bouh self-assigned this Feb 24, 2025
@Bouh
Copy link
Contributor

Bouh commented Feb 24, 2025

I did a clean project for the v2 that correctly passed all the CrazyGames QA tools, the example file is now terribly damaged.
I've started cleaning up the project while doing a review, get the change on the zip file at bottom of this post.
In the meantime, I have a few questions following the review:

I need your help on:

  • The User Changed condition return nothing with the QA Tool, and the text debug value on the scene never change for me.

  • Did I miss some files or something ?
    Image
    Image

  • The SDK v3 documentation is asking for a boolean, your used a number, and converted into a string.
    Image

  • Check also how the function is showing in the expression editor and in the condition editor. I tried to make it more comprehensible, a proper text should be done on the remaing function: GetUserToken, GetXsollaToken

  • According to the documentation, the crypto token should work, but it return null once I click on it in the QA Tool.

Other things I changed:

  • Be meaningful on the descriptions displayed in the editor. "User Changed" => "Check if the user changed." (I did the fix)
  • GetUserName & CrazyGames_UserID share the same description and names, that cause trouble for the discoverability on the condition interface. (I fixed it)
  • I used the Group in function to fit the sections from their SDK.
  • I renamed a some descriptions.
  • I cleaned some scenes and made a proper way to test the example in the QA tool thanks to a menu and back buttons.
  • I converted some deprecated events.

R1-CrazyGamesApiV3.zip

@planktonfun
Copy link
Contributor Author

I did a clean project for the v2 that correctly passed all the CrazyGames QA tools, the example file is now terribly damaged. I've started cleaning up the project while doing a review, get the change on the zip file at bottom of this post. In the meantime, I have a few questions following the review:

Oops I forgot to update my game engine to latest before submitting

I need your help on:

  • The User Changed condition return nothing with the QA Tool, and the text debug value on the scene never change for me.

found the problem, fixed.

Image
Image

  • Did I miss some files or something ?
    Image
    Image

All good, removed the unnecessary events in the game events tab
Image

  • The SDK v3 documentation is asking for a boolean, your used a number, and converted into a string.
    Image

There's no boolean return type on extension editor, so I used a number, changed it into a string instead

Image

  • Check also how the function is showing in the expression editor and in the condition editor. I tried to make it more comprehensible, a proper text should be done on the remaining function: GetUserToken, GetXsollaToken

alright I updated descriptions:
GetUserToken - Retrieve the user's session token for authentication.
GetXsollaToken - Retrieve the authentication token from Xsolla.

  • According to the documentation, the crypto token should work, but it return null once I click on it in the QA Tool.

Yup because of the condition the game must be invited to work, I added last error descriptions function for any api related error on the tabs

Image
Image
Image

Other things I changed:

  • Be meaningful on the descriptions displayed in the editor. "User Changed" => "Check if the user changed." (I did the fix)
  • GetUserName & CrazyGames_UserID share the same description and names, that cause trouble for the discoverability on the condition interface. (I fixed it)
  • I used the Group in function to fit the sections from their SDK.
  • I renamed a some descriptions.
  • I cleaned some scenes and made a proper way to test the example in the QA tool thanks to a menu and back buttons.
  • I converted some deprecated events.

I saw the clean up thanks a lot!

Also added link account response function

Image

Updated Example:
R2-CrazyGamesApiV3.zip

Updated Extension:
CrazyGamesAdApi.zip

@Bouh
Copy link
Contributor

Bouh commented Feb 25, 2025

Getting errors is helpful for creators to debug their games.
Thanks a lot for your changes.
I'm reviewing them and will push the update to production in the next hours.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ New extension A new extension
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants