+1 vote

I have a match 3 game. It will have in-app purchases too. My question is, right now, I store all data in dictionaries. The data my game will have is, it has all the levels whether they are unlocked and the high-score and all, it will have the amount of boosters the player has and the lives he has, lives auto-refill, one every fifteen minutes. I do use the check whether file is modified upon loading it. Plus if user uninstalls the game and re installs it, it would make all the purchases and user data go away because they were stored in the dictionary. Should, I use a database for it, I am thinking of firebase are there any other nice options? Also, I stumbled upon something called snapshots in google play services link to save games document This is exactly what, I want, so is this independent of a database, if, yes, how do, I implement this, basically, I just want a store of data which doesn't go away on uninstall and is not modifiable easily. I want the player to be able to sign in to their google play account to save data, if not signed in the data will get stored locally, but in order to restore it, need to sign-in like other games.

asked Jun 22 in Projects by hamza_memon (25 points)
retagged Jun 22 by hamza_memon

1 Answer

+1 vote

ya storing data in the cloud seems essential for a real game...

Firebase & Firestore is good but no godot api so have to first craft http request rest boilerplate to communicate with api
https://firebase.google.com/docs/reference/rest/auth

another option is Heroic Labs Nakama which has a nice godot api
https://heroiclabs.com/

Here is a basic demo that connects (using email account) to and stores data in both nakama and Firebase
https://github.com/rakkarage/PixelInterface

answered Jun 22 by rakkarage (805 points)

Finally, something that works and also with a video tutorial for a beginner like me. Thank you.

Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.