Integrating Google Play Services Into Godot 4/3.5! Advanced Godot!

Поділитися
Вставка
  • Опубліковано 29 чер 2024
  • Subscribe and learn more from me about Game Development and Programming!
    In this video, we discuss how to integrate Google Play Games With Godot 4!
    Discover how to seamlessly integrate Google Play game services into your Android Godot game with this comprehensive tutorial. Covering both Godot 3.5 and Godot 4.1, this guide walks you through the entire process, from setting up your project and plugin to understanding the get project. Learn how to set up sign-ins, unlock achievements, establish leaderboards, and save your game progress. This tutorial is compatible with Godot 4 and should work with Godot 3.5, with minor adjustments for signal connections. Dive into the world of Play Game Service Plugin (PGSGP) for Godot and enhance your games features!
    BE MY FRIEND:
    🐦Add me on Twitter: / finepointcgi
    Check out my Website: finepointcgi.io/
    Trello of Upcoming Tutorials: trello.com/b/cJWPaVyV/godot-t...
    You can support me on Patreon: / finepointcgi
    Hang Out with the Guys on Discord: / discord
    TIMESTAMPS
    00:00:00 - Start
    00:01:09 - Discussing the Plugin
    00:02:22 - Getting Into Godot
    00:03:55 - Discussing What a Plugin Is
    00:04:24 - Enabling Your Plugin
    00:05:54 - Setting Up Google Play Games Services
    00:06:53 - Setting Up Our Google Play Games Integration
    00:10:33 - Creating Our Credentials
    00:11:00 - Building an OAuth Client
    00:11:25 - Sha1 Fingerprint
    00:12:25 - How To Create a Debug Keystore
    00:16:45 - Adding the Ability To Login
    00:23:09 - Talking a Bit About Adb
    00:23:41 - Setting Up Our Build System To Actually Work Right
    00:30:59 - Adding in Signing Out
    00:32:12 - Signing Out
    00:34:23 - Lets Talk About Achevements!
    00:47:31 - Lets Talk About LeaderBoards!
    00:56:19 - How To Work With Save Games!
    01:05:23 - Outro
    MUSIC
    Music provided by TheRelaxedMovement.
    Check it out here: / therelaxedm...​
    HASHTAGS:
    #Godot4 #Android #googleplayservices
    ABOUT MY CHANNEL:
    I've been a software developer for over 7 years. I've worked in the game industry for 3 of those years. This channel is used for news on the gaming\programming industry and for tutorials for game\programming development.
    Integrating Google Play Services Into Godot 4/3.5! Advanced Godot!
    Keywords: Godot game engine, crafting system, inventory system, game development, tutorial, Fine Point CGI, Mitch, game objects, script execution, game manager, inventory button, craftable items.

КОМЕНТАРІ • 92

  • @diogohipolito560
    @diogohipolito560 11 місяців тому +3

    OMFG, I literally just finished watching your other integration video with play games service hahahah. Here we go again! XD Thank you and keep up the great work

    • @FinePointCGI
      @FinePointCGI  11 місяців тому

      Hey it's mostly the same so you should be good once you get that initial setup done!

  • @HarishIyer21
    @HarishIyer21 7 місяців тому

    Thank you so much for this tutorial! You're so helpful. Wish you Good Luck :)

  • @toebymaguire5108
    @toebymaguire5108 3 місяці тому

    Nice tutorial man, thanks for the help.

  • @Relivino
    @Relivino 11 місяців тому +2

    Wow! You made it! Thank you for listening to my request!

    • @FinePointCGI
      @FinePointCGI  11 місяців тому

      Hey! Sorry it took forever I had to update the plugin and it was fun to do!

    • @Relivino
      @Relivino 11 місяців тому

      @@FinePointCGI It's okay that it took you so long, thanks do that the material is up to date and people can learn from it without fear!

  • @ZafarIqbal-qn3bx
    @ZafarIqbal-qn3bx 11 місяців тому

    Great, thanks for the video.

  • @TommyLikeTom
    @TommyLikeTom 4 місяці тому

    Thank you so much. Everything works great. Sorry for being cranky

  • @codewithmax
    @codewithmax 11 місяців тому +1

    Wow! Thanks!

  • @marko95g
    @marko95g 11 місяців тому

    wohooo :D thanks !

  • @egealtays
    @egealtays 8 місяців тому +1

    Thank you for the video. Can you make an in app purchases demo with godot 4. I think it would help us a lot.

  • @robert-choi
    @robert-choi 6 місяців тому +1

    you're a legend.

  • @shyam5804
    @shyam5804 11 місяців тому

    very very very very very very very underrated channel in the entire youtube

  • @yinoctave1941
    @yinoctave1941 6 місяців тому

    I like how you explain everything so clearly. Thank you! Would you consider making one for in app purchase too?

    • @FinePointCGI
      @FinePointCGI  6 місяців тому +3

      I have one but I'm not sure if it's fully up to date yet. I will double check it real quick though

  • @abhaynath5833
    @abhaynath5833 11 місяців тому

    Great tutorial as always!
    Can you please make a video how to compile godot and export templates explicitly for 2d games and the apk size optimisation?

    • @FinePointCGI
      @FinePointCGI  11 місяців тому

      I have added it as an issue under my suggestions git github.com/finepointcgi/FinepointCGI-Suggestions/issues/43

  • @TommyLikeTom
    @TommyLikeTom 4 місяці тому

    For the functions that take a long time to edit, I just copied it 10 times, did one, highlighted it, pressed ctrl+space (vs code) and copilot just filled it all in for me

  • @codewithmax
    @codewithmax 9 місяців тому +1

    Hi, what do you think about new plugin packaging format in Godot 4.2?

  • @user-lp8xy5ui2w
    @user-lp8xy5ui2w 8 місяців тому

    WOW... perfect a-z tutorial

    • @user-lp8xy5ui2w
      @user-lp8xy5ui2w 8 місяців тому

      33:31 sign out call back has no param
      58:35 param of load success call back is string of json that saved before

  • @direnbulut1318
    @direnbulut1318 23 дні тому

    _on_game_saved_fail and _on_game_load_fail instead of _on_game_saved_failed and _on_game_load_failed, if it shows an error. Thank you very much for this tutorial... Helped me alot

  • @giovannygonzalez5582
    @giovannygonzalez5582 10 місяців тому

    Hello, thank you very much for the video. It helped me a lot. I would like to know how you can get the user's score from the leaderboard.

  • @Manx191
    @Manx191 11 місяців тому +1

    Fantastic video 🙏 Will you be revisiting ADMOB in godot 4?

    • @FinePointCGI
      @FinePointCGI  10 місяців тому

      I want to. I'll have to look at the addon though and update it..

  • @notmousasalloum
    @notmousasalloum 4 місяці тому

    hey amazing videos!But i rlly liked the vidoo that you show how to deploy admob to godot.For me sadly,i use the latest version of godot.So it did not work,i even tried using a new admob file .But i did not umderstand anything!Like theres no costume build i had to clicl use gradle build and then when exporting lots of errors came up.Besides,you promised you would do an admob video of you using real admob ad units.Do it but with godot higher than 4!

  • @MadFroggysTech
    @MadFroggysTech 6 місяців тому

    If anyone getting a error code 4 after applying all these code in godot 3.5, my case was that i forgot to add the debug key on the android export panel there is a section called keystore in (project -> export->androoid export->keystore) there is option to add both debug key and release key hope it helps:)

  • @201949
    @201949 9 місяців тому +1

    Hi, Mitch,
    Thank you very much for the tutorial and for the latest version of the plugin! Could you tell me, if it's possible to add to the plugin a method that will display snapshot attributes and a list of them? I would like to be able to embed a list of snapshots into the UI of my applications, without using the standard PGSGP Activity. And another question. Will it be possible to add the function to disable log messages "Sign in data is valid" and others of the kind? Unfortunately I don't possess the skills of rebuilding the plugin myself yet.

    • @FinePointCGI
      @FinePointCGI  9 місяців тому +1

      I can put it on my list of things to look at.

    • @201949
      @201949 8 місяців тому

      I rebuilt the plugin for Godot 3.5.2 with enabled support for devices from API 21 to API 33 and disabled logging. The plugin works great. Saving and loading progress from the Cloud also works great. I’m already using it in the release of the game Snow Bunny Adventure on Google Play. Thank you!@@FinePointCGI

  • @staqstaq
    @staqstaq 9 днів тому

    please make a tutorial on how to generate new plugin .aar

  • @maxisanjuan9304
    @maxisanjuan9304 9 місяців тому

    Hello brother, were you able to put the purchase in your app?
    I'm using version 4.0 and it doesn't allow me, can you do a tutorial on how you did it please?

  • @sololeveling944
    @sololeveling944 6 місяців тому +1

    godot 4.2 use new andriod plugin v2 architecture, will the plugin support? as v1 is deprecated

  • @ulfbereth342
    @ulfbereth342 6 місяців тому

    Hi,
    Thanks for the tutorial.
    I have a question. I managed to add Google Game Services to my game and added a login screen, but I am encountering a problem. Sometimes when I try to log in, I get the "sign in data has expired" error. It works fine when I wait a while and try it later, but how can I solve this problem completely?

  • @staqstaq
    @staqstaq 9 днів тому

    will this plugin works with godot 3.5.3 ? or just 3.5.2?
    or could you make a tutorial on how to generate plugin for any version?

  • @nikoart1561
    @nikoart1561 9 місяців тому

    Yeah but missing in app update which is useful

  • @musplaygame
    @musplaygame 7 місяців тому

    como puedo agregar micro pagos????. o compras virtuales

  • @marko95g
    @marko95g 11 місяців тому

    proposal for next tutorial:
    implementation firebase crashlytics sdk and ndk.
    it is very tweaky, because crashlytics ndk requires unstripped native libs.
    The biggest problem is to send silent crashes to crashlytics as non fatal errors (AFAIK this is only way to report errors from gdscript).
    crashlytics ndk will be used for core engine crashes, for example, driver doesn't support gdshaders (this error already happened when I tested on "old" phone - android 10 - mi a2)

    • @FinePointCGI
      @FinePointCGI  11 місяців тому

      I have created an issue for this on my suggestion list!
      github.com/finepointcgi/FinepointCGI-Suggestions/issues/44

    • @marko95g
      @marko95g 11 місяців тому

      @@FinePointCGI thank! Currently I am trying to debug engine crash in my android game, so I will share steps with you as it may be helpful with this suggestion.

  • @pepelonx
    @pepelonx 7 місяців тому

    Exporting as AAB and uploading for internal testing the signIn doesn't work, is there a solution for this issue or am i doing something wrong?

  • @dragoncito2146
    @dragoncito2146 3 місяці тому +1

    Could you update the plugin to 4.2.x? :)

  • @glaxorios-bx8hw
    @glaxorios-bx8hw 6 місяців тому

    I'm stuck,
    I did everything shown in the video and when I tested it on my own phone, I did not encounter any problems while logging in etc.
    But when I released the game with Godot (I unticked the export with debug button) and uploaded the version(release key store etc its all set) to the Google Play Store,
    Google Play Store says that it encountered the login failed error when it tested the application before publishing it and rejects the version.
    How can I solve this problem? please help

  • @mehmetarslan8216
    @mehmetarslan8216 3 місяці тому

    Hello, I have a game and I will use the google play payment method for in-game purchases. I want to do this in Godot version 4.2.1. Can you help me with this?

  • @hector_dgz94
    @hector_dgz94 11 місяців тому

    hey bro, by the way i have a question i think you could help me, i want to develop a mobile game (android & ios) so my question is, should i stick with godot 3.5 or should i use godot 4.x ? whenever i test android apps on androidstudio emulator they have very low performance or directly crashing. so please help me take a desition, i would greatly apreciate it 😄, also if i go with godot 4.x for mobile, wich would be the best renderer ? , thanks for your time, continue up the good work 😄

    • @FinePointCGI
      @FinePointCGI  11 місяців тому

      If your going mobile it depends on what type of game if its 3d 4 is better if its not then id say 3.5 (even though im doing a 2d game for mobile in 4)... The reason is, vulkin is support on "most" devices however according to
      developer.android.com/about/dashboards
      15% of devices dont support it. Generally thats not a problem, but it can be painful to deal with. 15% is alot of potential users.
      Now you may ask ok but what about mobile renderer? Sadly its missing alot of features so in a year or two it may be a good option but right now its not quite there yet. Though for 2D its close enough you could get away with it as long as your not doing anything fancy. Though going to 4 could save you some trouble upgrading in the future...

  • @MadFroggysTech
    @MadFroggysTech 6 місяців тому

    why am i not able to save game though ?

  • @AbsolutelyMindBlowin
    @AbsolutelyMindBlowin 6 місяців тому

    Could this be used for godot 4.2?

  • @sololeveling944
    @sololeveling944 6 місяців тому

    will gpgs works with c# language?

  • @dangosjv7193
    @dangosjv7193 11 місяців тому +1

    Thanks for the tutorial, Can I ask about the line
    GPGS.init(true, false, false, "")
    Why is it ok to leave the clientID field empty? I tried to fill it with my google cloud client ID, but it does not work

    • @philhudson1991
      @philhudson1991 9 місяців тому +1

      +1 to this, I couldn't work out why my integration wasn't working for so long - finally i set it to empty string and things worked.

  • @TommyLikeTom
    @TommyLikeTom 4 місяці тому

    _Does not work with any version beyond 4.0_
    This is hugely important. If you use steam to update godot it will break your dependencies at some point. Pay careful attention

  • @hector_dgz94
    @hector_dgz94 11 місяців тому

    shit, you are the best

  • @TommyLikeTom
    @TommyLikeTom 4 місяці тому +1

    GPGS is such a bad variable name compared to play_services

  • @musictalez3323
    @musictalez3323 11 місяців тому

    Hey FinePointCGI, do i must add GDPR message google consenst to my app?

    • @FinePointCGI
      @FinePointCGI  11 місяців тому

      Only if you are using adsense. This plugin doesnt have it so you dont need to.. But that being said ill be looking at adding adsense soon TM

  • @user-ps9qd2pf2j
    @user-ps9qd2pf2j 10 місяців тому

    I never made a game or app but I have to pay £25 just to make a Signup/Login System

  • @zerotohero6402
    @zerotohero6402 11 місяців тому

    Can we use godot 3.5 for export andorid with target sdk 33?

    • @FinePointCGI
      @FinePointCGI  11 місяців тому +1

      You can use this plugin with 3.5 and it shoudl be targeting 33 already though you can just set it to be 33 and it "should" work

  • @alexwalker9005
    @alexwalker9005 8 місяців тому

    Hello, thank you for video, but can u please help me? Then i want to export apk file i have an error "Could not find version of build tools that matches Target SDK, using 34.0.0". I tried to install and uninstall versions of API from Android Studio...

    • @FinePointCGI
      @FinePointCGI  8 місяців тому

      you can check if they exist out in
      c:\Users\username\AppData\Local\Android\Sdk
      default Godot checks that location.. if its there then you may need to reinstall though it looked like you did that so you could try to
      go to
      developer.android.com/studio
      scroll down to almost the bottom and get the command line tools only
      unzip it open up a command prompt and navigate to that folder you unzipped the command line tools and run
      sdkmanager --sdk_root=c:\Users\username\AppData\Local\Android\Sdk "platform-tools" "build-tools;33.0.2" "platforms;android-33" "cmdline-tools;latest" "cmake;3.10.2.4988404" "ndk;23.2.8568313"
      and try from there

    • @Dance-wk7md
      @Dance-wk7md 8 місяців тому

      Thanks for the answer :) I tried this method, but the following error is displayed..."
      Warning: Failed to download any source lists!
      Warning: IO exception while downloading manifest
      Warning: IO exception while downloading manifest
      Warning: Still waiting for package manifests to be fetched remotely.
      Warning: Failed to find package 'build-tools;33.0.2'
      "
      As I understand it, the whole problem is in the version C:\Users\User\AppData\Local\Android\Sdk\build-tools\34.0.0 but from Android Studio i cant get other version?
      I tried to download another version of build-tools (33.0.2) from internet and manually create and copy it to C:\Users\User\AppData\Local\Android\Sdk\build-tools\32.0.2 but without success :( Is this even correct?@@FinePointCGI

    • @FinePointCGI
      @FinePointCGI  8 місяців тому

      @@Dance-wk7md Tbh If you cant install it via android studio or the command line tools theres not much we can do. The error you have says it cant find it out on the remote site. This leads me to belive its down or your network wont allow you to pull it down.

  • @JDRos
    @JDRos 9 місяців тому

    Works with 4.1.1?

  • @zefrifaris
    @zefrifaris 6 місяців тому

    why i am connect.init(true, false,false, "") or anything , always force close in my phone. i am using godot 4.2.1

    • @FinePointCGI
      @FinePointCGI  6 місяців тому

      Try using ADB logcat and see whats happening

    • @zefrifaris
      @zefrifaris 6 місяців тому

      @@FinePointCGI
      12-24 03:08:22.081 24955 24994 I godot : Initalizing PGSGP
      12-24 03:08:22.081 24955 24994 E godot : USER ERROR: In Object of type 'JNISingleton': Attempt to connect nonexistent signal '_on_leaderboard_score_retrieve_failed' to callable 'Node2D(PlayGames.gd)::_on_leaderboard_score_retrieve_failed'.
      12-24 03:08:22.081 24955 24994 E godot : at: connect (core/object/object.cpp:1344)

    • @zefrifaris
      @zefrifaris 6 місяців тому

      @@FinePointCGI
      google console report
      Crash
      Stack trace
      Exception java.lang.NoSuchMethodError: No virtual method getActivity()Landroidx/fragment/app/FragmentActivity; in class Lorg/godotengine/godot/Godot; or its super classes (declaration of 'org.godotengine.godot.Godot' appears in /data/app/~~tEUqK565AdE5n2cIJalz2Q==/com.example.fffff-FXfYCKWFCPEuFMQqpQrAWw==/base.apk!classes2.dex)
      at io.cgisca.godot.gpgs.PlayGameServicesGodot.initialize (PlayGameServicesGodot.kt:209)
      at io.cgisca.godot.gpgs.PlayGameServicesGodot.init (PlayGameServicesGodot.kt:182)
      at org.godotengine.godot.GodotLib.step
      at org.godotengine.godot.gl.GodotRenderer.onDrawFrame (GodotRenderer.java:57)
      at org.godotengine.godot.gl.GLSurfaceView$GLThread.guardedRun (GLSurfaceView.java:1576)
      at org.godotengine.godot.gl.GLSurfaceView$GLThread.run (GLSurfaceView.java:1278)

  • @karimsantoro4326
    @karimsantoro4326 7 місяців тому

    I'm in pain. Could someone help me understand why I received error code 4 during sign-in?
    - Package name is consistent in Godot, Google Cloud, and Play Console.
    - SHA-1 fingerprint from my release keystore matches the one in Google Cloud and Play Console.
    - OAuth 2.0 consent screen has the correct app name and support email.
    - Google Play Game Services APIs are enabled
    - Test device has the latest Google Play Services and a valid Google account
    I've been banging my head on the desk for three days. Thank you

    • @FinePointCGI
      @FinePointCGI  7 місяців тому +1

      I dont have an exact answer but
      Make sure that your game is published or at least in a testing track in the Google Play Console.
      Since your app is in testing check to see if you added your test accounts as test users on the OAuth consent screen.

    • @MadFroggysTech
      @MadFroggysTech 6 місяців тому

      did you fgured out something i am getting the same error

    • @karimsantoro4326
      @karimsantoro4326 6 місяців тому

      @@MadFroggysTech Yes, in my case, I published the game and then the configuration magically worked.

    • @MadFroggysTech
      @MadFroggysTech 6 місяців тому

      @@karimsantoro4326 I have also published my game not in playstore in the Google Play games section is that what you are saying oru should I publish it on playstore

  • @ভোমরা
    @ভোমরা 4 місяці тому

    Hi

  • @kurosensei3388
    @kurosensei3388 6 місяців тому

    Can we access it via c#

    • @FinePointCGI
      @FinePointCGI  6 місяців тому +1

      I'm going to have to research that. Godot 4.2 just got access to Android and I'm told there is a whole procedure to get it to work.

    • @kurosensei3388
      @kurosensei3388 6 місяців тому

      @@FinePointCGI thanks

  • @tubehello4615
    @tubehello4615 5 місяців тому

    4.2.1 activity has problem. so don't use 4.2.x~

  • @adrianabatista7042
    @adrianabatista7042 10 місяців тому

    Can you make a update video about of Google Play Billing ?
    Similar to this video -> ua-cam.com/video/qejP2VwvlYE/v-deo.html

  • @emisorano
    @emisorano 11 місяців тому

    your email is still visible in the video dude, rip your inbox

    • @FinePointCGI
      @FinePointCGI  11 місяців тому

      Happens it's an old email so I don't use it to much

  • @BuilderOfTheCakeStudios
    @BuilderOfTheCakeStudios 3 місяці тому

    What does it mean if you get this error?
    JNI DETECTED ERROR IN APPLICATION: JNI CallVoidMethodA called with pending exception java.lang.NoSuchMethodError: No virtual method getActivity()Landroidx/fragment/app/FragmentActivity
    I have been trying to figure out what I did wrong but I can't find any step I did differently.