Quelles sont les conséquences de l'ajout d'une statistique de progression à un succès Steam en direct?

10

Disons que j'ai un succès dans mon jeu, "Collectez votre premier thingamajig", et je le publie sur la version live du jeu sans stat de progression. Plus tard, je décide que je veux ajouter de nouvelles réalisations dans une mise à jour, dont une basée sur la réalisation précédente: "Collect 10 thingamajigs".

Je crée une statistique de progression pour celui-ci qui est mise à jour dans le code, mais je modifie également le succès d'origine afin qu'il soit déverrouillé via la statistique de progression plutôt qu'une fonction AwardFirstThingamajigAchievement () dans le code.

Quelles en sont les conséquences? Est-ce qu'un joueur qui avait déjà ce débloqué trouvera que le succès a été reverrouillé parce que le succès a été modifié, ce qui en fait techniquement un nouveau? Restera-t-il déverrouillé, mais provoquera-t-il toujours un petit popup pour le premier succès du prochain Thingamajig collecté? Ou est-ce que Steam ne touchera tout simplement pas aux succès déjà débloqués?

user109671
la source
Je suppose que renommer le succès le rendra déverrouillé pour ceux qui l'ont gagné. Supprimer la réalisation pour la remplacer par une nouvelle devrait faire le contraire.
Rudey

Réponses:

1

D'après ce que je me souviens de l'API Steam, vous pouvez définir / réinitialiser la progression des joueurs via l'API Steam manuellement, ce qui vous permet de résoudre le problème de plusieurs manières.

Tant que les identificateurs de réussite dans le backend reflètent les valeurs de votre code, tout devrait bien se passer et la nouvelle réussite doit refléter les progrès déjà réalisés dans l'ancienne statistique.

si vous souhaitez migrer le succès déjà en cours d'exécution vers un nouveau type, vous pouvez le "déprécier".

  • Rendez l'ancien "caché" et supprimez le code du jeu qui met à jour la valeur.
  • Créer une nouvelle réalisation dans le backend Steam
  • Créez un code de jeu qui prendra la valeur des joueurs de l'ancien exploit et enregistrez-le dans un nouveau plus définira l'ancienne valeur à 0.

Je pense que vous obtenez mon point ici. Cette approche a des hauts et des bas, mais est assez sûre et provoquera probablement le popup. Mais je suis plus ou moins sûr que vous pouvez définir la valeur de réalisation sans provoquer le popup.

D'un autre côté, je ne pense pas que la vapeur effacera les données des joueurs si vous changez la réussite d'origine en "progressable". C'est juste un indicateur qui fait apparaître la barre de progression et même si vous changez la valeur maximale ou modifiez la réussite d'une autre manière, il devrait toujours conserver les données déjà existantes. Alors faites-le et observez!

Si vous ne voulez pas prendre de risque, faites une petite expérience. Si vous prenez le déploiement de Steam au sérieux, vous devriez de toute façon avoir un ID testApp.

J'espère que cela t'aides!

Gueule
la source
-1

Je ne suis pas familier avec la façon dont Steam gère les choses (pas encore publiées là-bas), mais je suppose que tout joueur qui a déjà déverrouillé un succès le conserverait. En effet, les réalisations ne sont pas comme des variables booléennes qui sont activées et désactivées. Une réalisation sera enregistrée sur le serveur Steam comme ayant été réalisée. Par conséquent, tout progrès supplémentaire effectué après cela, indépendamment des modifications apportées au code, ne devrait pas avoir d'importance. De cette façon, même si je supprimais le jeu, ma réussite serait toujours là. Si Steam ne faisait pas cela (c'est-à-dire que le succès devait être déverrouillé lorsque vous modifiez le code), le succès disparaîtrait également lorsque vous téléchargez à nouveau le jeu - car toutes les données locales sur les conditions de réalisation auraient été supprimées. cependant,

J'espère que cela t'aides.

Daniel Wilkes
la source