Page 1 sur 1

Avis sur enregistrement datas

Publié : 09 Juil 2018 11:02
par lol7
Bonjour à tous,

j'aurais voulu avoir votre avis/expérience sur le sujet de l'enregistrement des datas, type progression du jours, score, etc...
Bon, je suis débutant dans le domaine de Unity, donc j'essaie de baliser un peu cette problématique.

Bien compris que le PlayerPref ne sert que pour les données type profil utilisateur (musique, résolutions, etc...). Pour des données plus sensible, passer par la sérialization. Donc, ca , pas de soucis, j'ai mis en place. Mes données sont enregistrées en local sur le disk en Json (à force de voir que tout le monde passe par de type de fichier...). Le Json est sérializé et "crypté" en binaire.

J'en arrive au choix de la solution de l'enregistrement des données.... En local, sur le device, cela offre l'avantage de pouvoir jouer en offline n'importe où. Dans le métro, à l'étranger, hors forfait... etc... Personnellement, je vois cela comme un plus (quand on est dans un jeux plutôt solo évidemment).

Après, ce qui revient, c'est le fait d'enregistrer online ses datas pour les sécuriser dans le cas où le jouer perd sont device ou bien doit reformater, etc... C'est énervant de reprendre de 0. Je peux également le comprendre. Par contre, cela oblige à devoir jouer en ligne tout le temps.

Bon, on peut combiner les 2, dans un premier temps, tester si données mobile actives (> enregistrement sur le server) et sinon, si pas d'accès, enregistrement en local. Idem pour le load de datas. C'est un peu plus lourd comme routine mais cela permet d'avoir le côté pratique du offline et le côté secure du online.

Problématique suivante... Où enregistrer ses données en ligne... Si on ne veut pas s'embêter avec une gestion de BDD, à gérer du login manuel, etc... La solution de Google Play Games Service semble pas mal du tout ("Google aime bien nous simplifier la vie"). Les données sont sécurisées, on a pas à gérer la BDD, etc...

Par contre, comme Google a arrêté le support iOs (de ce que j'ai lui, hein...), il faut se tourner vers une autre solution pour nos amis sous Apple (je ne suis pas sûr de porter mes jeux sur iOs de toute manière...).

Voilà mon cheminement basique sur l'enregistrement de données. Pas de solution parfaite entre local et offline. Pas de solution non plus simple pour le multiplateforme (Android et Apple en tout cas).

Mis à part combiner encore une fois de la serialisation Json locale + enregistrement sur cloud (mais c'est lourd comme routine) et gérer une BDD direct pour pouvoir sauvegarder ses données en multiplateforme.

Vos expériences ? Vos avis ? merci

Re: Avis sur enregistrement datas

Publié : 18 Juil 2018 14:15
par BenoitFreslon
Salut Lol7,

Google utilise un Cloud comme pour iOS pour l'enregistrement des données. Cela permet de synchroniser les sauvegardes entre devices ou après une désinstallation de l'application ou encore après le changement de téléphone.

Il faut donc 2 scripts différents pour gérer les 2 OS voire 2 plug-ins natifs qui vont gérer le sync des datas (iOS et Android)

Personnellement, je n'ai pas encore implémenté le Cloud pour les sauvegardes. La première raison est parce que Google Play Services de Unity est foireux (impossible de se connecter en buildant avec Gradle). La seconde raison est que seulement 1% des utilisateurs vont en avoir besoin.

Pour sauvegarder tranquillement les datas en local j'utilise le plug-in payant Anti-Cheat Toolkit : https://assetstore.unity.com/packages/t ... lkit-10395

Mais il y a un plug-in gratuit visiblement pour crypter les playerprefs Secured PlayerPrefs : https://assetstore.unity.com/packages/t ... refs-32357

Je ne l'ai jamais essayé.

Re: Avis sur enregistrement datas

Publié : 18 Juil 2018 15:20
par ZeroKcm
BenoitFreslon a écrit :
18 Juil 2018 14:15
Personnellement, je n'ai pas encore implémenté le Cloud pour les sauvegardes. La première raison est parce que Google Play Services de Unity est foireux (impossible de se connecter en buildant avec Gradle).
Merci pour cette réponse, le sujet m’intéresse, je vais tester les assets.

Mais une question cependant, pourquoi tu dit que Google Play Services ne fonctionne pas avec Gradle ? Ça fonctionne bien sur mon projet actuel.

Re: Avis sur enregistrement datas

Publié : 18 Juil 2018 15:35
par BenoitFreslon
J'ai tenté à plusieurs reprise en farfouillant sur Internet les libs Google play services mais j'ai toujours le problème de connexion.

https://github.com/playgameservices/pla ... -403227467

J'ai abandonné. Trop de temps perdu pour une feature qui me semble peut utile pour un jeu solo.

Re: Avis sur enregistrement datas

Publié : 18 Juil 2018 15:51
par ZeroKcm
Si ça t'intéresse toujours , je suis sur :
* Play Games 0.9.50
* Play Services + Firebase 12.0.1

L'authentification avec Play Games marche bien.
Ensuite, on utilise le token de Play Games pour se connecter sur Firebase.

Le seule soucis qu'on a eu provient de autorisation de l'accès via la console developer (https://console.developers.google.com)
Il fallait aussi indiquer les bon SHA-1.

On peut ouvrir un post la dessus si besoin. (désolé d'avoir pollué le post initial)

Re: Avis sur enregistrement datas

Publié : 20 Juil 2018 10:03
par lol7
Merci Benoit pour ta réponse. Je vais tester tout cela. SI je comprend bien, tu fonctionnes de ton côté avec de l'enregistrement en local + cloud.

Re: Avis sur enregistrement datas

Publié : 20 Juil 2018 10:38
par BenoitFreslon
De rien ;)

En fait, je ne fonctionne qu'en local de mon côté. Pour un jeu solo assez court, le stockage de la progression sur un Cloud ne me semble pas indispensable.