Digamos que tengo un logro en mi juego, "Recoge tu primer juego", y publico esto en la versión en vivo del juego sin una estadística de progreso. Más tarde, decido que quiero agregar algunos logros nuevos en una actualización, incluido uno basado en el logro anterior: "Recoge 10 thingamajigs".
Creo una estadística de progreso para este que se actualiza en código, pero también edito el logro original para que se desbloquee a través de la estadística de progreso en lugar de una función AwardFirstThingamajigAchievement () en el código.
¿Cuales son las consecuencias de esto? ¿Un jugador que ya tenía esto desbloqueado encontrará que el logro se ha vuelto a bloquear porque el logro ha sido editado, técnicamente haciéndolo uno nuevo? ¿Permanecerá desbloqueado, pero aún causará una pequeña ventana emergente para el primer logro en el próximo Thingamajig recogido? ¿O Steam simplemente no tocará los logros ya desbloqueados?
fuente
Respuestas:
Por lo que recuerdo de la API de Steam, puede configurar / restablecer el progreso de los jugadores a través de la API de Steam manualmente, lo que le permite resolver el problema de varias maneras.
Siempre que los identificadores de logros en el backend reflejen los valores en su código, debería estar bien y el nuevo logro debería reflejar el progreso ya alcanzado en la estadística anterior.
si desea migrar el logro que ya se está ejecutando a un nuevo tipo, puede "desaprobarlo".
Por otro lado, no creo que Steam borre los datos de los jugadores si cambias el logro original a "progresable". Es solo una bandera que hace que aparezca la barra de progreso emergente e incluso si cambia el valor máximo o modifica el logro de otra manera, aún debe mantener los datos ya existentes. ¡Así que hazlo y observa!
¡Espero que esto ayude!
fuente
No estoy familiarizado con cómo steam maneja las cosas (aún no se ha publicado allí), pero supongo que cualquier jugador que haya desbloqueado un logro ya lo mantendría. Esto se debe a que los logros no son como las variables bool que se activan y desactivan. Se registrará un logro en el servidor de vapor como alcanzado. Por lo tanto, cualquier progreso adicional realizado después de eso, independientemente de cualquier cambio en el código, no debería importar. De esta manera, incluso si eliminara el juego, mi logro aún estaría allí. Si Steam no hizo esto (es decir, el logro tendría que volverse a bloquear cuando cambies el código), el logro también desaparecería cuando volvieras a descargar el juego, ya que todos los datos locales sobre las condiciones de logro se habrían eliminado. Sin embargo,
Espero que esto ayude.
fuente