Cuando el juego cambia, la estructura del save también puede cambiar.
Por eso conviene guardar una versión.
[System.Serializable]
public class SaveData
{
public int version = 2;
public int monedas;
public int nivel;
public int experiencia;
}
Versión 1:
monedas
nivel
Versión 2:
monedas
nivel
experiencia
Los saves viejos pueden necesitar adaptación.
if (datos.version == 1)
{
datos.experiencia = 0;
datos.version = 2;
}
Podés actualizar saves antiguos en vez de romperlos.
public int version;
Siempre pensá qué pasa cuando cambie la estructura del juego.