Giter Site home page Giter Site logo

oneseedfruit / pgsgp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cgisca/pgsgp

35.0 35.0 7.0 36.97 MB

Google Play Games Services Android plugin for Godot 3.2.3 and newer Godot 3.x versions.

License: MIT License

Kotlin 100.00%
achievements game-services godot godot-engine godot-gpgs godot-module godot-play-games-services godot-plugin godotengine google-play-games google-play-games-services leaderboards player-stats saved-games

pgsgp's People

Contributors

anisc avatar cgisca avatar congisca avatar dala00 avatar m-melis avatar oneseedfruit avatar ozzadar avatar randomshaper avatar spietika avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

pgsgp's Issues

Disabling show_popups variable doesn't work

Hi, I'm using your plugin and works well (thanks for it), but at the first game run it show the Google Play Game Services Permission Popup, I think it will ask permission to modify or delete google play services data or something.

How do we prevent this to happen ?

I think user will be scared to continue playing the game when we asked permission to modify their Google Play Services and most will probably uninstalled the game when they read the popup dialog.

I just tried setting:

var show_popups := false
var request_email := false
var request_profile := false
var request_token := ""

but the result it's always the same.

PGSGP: Backend Token Verification โ€“ [Server-side] extension for increased security

I made the two following requests about a year ago in the original PGSGP, I think that such an extension or creation (of a server-side module) could be of great importance, especially for Godot-Android developers, and a great contribution to the security of the application can afford.

##############################################################

I would like to integrate token authentication on the server side for the PlayGamesServices so that only the server can make calls.
"Never trust the client" ;)

Seems to be a common practice:
https://developer.android.com/games/pgs/android/server-access

Here is a graphic (for better understanding):
https://developer.android.com/games/playgames/integrating-pgs-existing-id-solutions#restore_player_state

How can I have the token received - (on the backend) from the client - exchanged for the access token at Google Play Games Services. Is there a module for this or another solution? Thanks in advance! :)

##############################################################

GooglePlayServices (client-server model):
Does anyone know how to check my client's token on my game-server? Is there a module for Godot for this? (I also have to connect my server to "Google Play Games Services" and query the token there, right?)
๐Ÿค”

Two more official links:

Official Google source about the server side (section): https://developers.google.com/games/services/android/offline-access#exchange_the_server_auth_code_for_an_access_token_on_the_server

Source of example code:
https://github.com/playgameservices/clientserverskeleton/tree/master/ServerApp/src/main/java/com/google/sample/games

Error on init

Hi, i'm using your latest 3.1.1 version for Godot 3.3+ (also tried the previous 3.1.0), and i do have an error when calling the init method. GooglePlayServices are installed on the phone and i can use them in other games.
The singleton is found but the error says no init in it.

Any idea?

Error when using Snapshots code on Godot 4.x.x

Hello there, I am having issues with some of the code in Godot 4. This has to do with Save Games. Sadly I don't really understand the issue or what is going on, but I will provide context and hopefully, it can be solved.

I am receiving the following error:
USER ERROR: Error calling from signal '_on_game_load_fail' to callable: 'Node2D(main.gd)::_on_game_load_fail': Method expected 1 arguments, but called with 0.

This occurs for _on_game_saved_fail too

For context, I am making the following connections as such (for Godot 4 compatibility)

# Saved games (cloud saves)
play_games_services.connect("_on_create_new_snapshot", Callable(self, "_on_create_new_snapshot"))

play_games_services.connect("_on_game_saved_success", Callable(self, "_on_game_saved_success"))
play_games_services.connect("_on_game_saved_fail", Callable(self, "_on_game_saved_fail"))

play_games_services.connect("_on_game_load_success", Callable(self, "_on_game_load_success"))
play_games_services.connect("_on_game_load_fail", Callable(self, "_on_game_load_fail"))

On the JSON side of things, I am using the methods directly from the JSON object. Specifically, the stringify() and parse_string(). Example:
from var available_events = parse_json(events_array) to var available_events = JSON.parse_string(events_array)
and
from play_games_services.saveSnapshot("SNAPSHOT_NAME", to_json(data_to_save), "DESCRIPTION") to play_games_services.saveSnapshot("SNAPSHOT_NAME", JSON.stringify(game_save_data), "This is a test")

The other code works using this implementation, it is just the snapshots part that is causing issues. Furthermore, if I try to show, save, or load snapshots only then do the other parts of the code present the same error message for their respective signals for some reason.

Hopefully we can find solutions to this, I will update this thread if I find one.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.