PlayerPrefs funcionará multiplataforma, pero no se recomienda para el progreso del juego guardar archivos porque es inseguro. Como archivo de texto sin formato, un jugador puede abrirlo fácilmente y cambiar el contenido para hacer trampa, o hacer que su juego se comporte de forma impredecible. Tampoco está garantizado quedarse.
PlayerPrefs está destinado a la información de preferencias no esenciales, como el mapeo de control o la configuración de música / sfx: cosas que el jugador puede cambiar libremente de todos modos, y que no fallarían terriblemente si usaran (en Windows, por ejemplo) un punto de restauración del sistema y pierdan parte de su información de registro. Si esto perdiera sus puntajes altos o el progreso de la campaña, ¡los jugadores estarían justificadamente molestos!
En cambio, se recomienda guardar el progreso del juego en su propio archivo (generalmente binario, posiblemente encriptado o firmado si desea que sea más difícil de modificar, pero vea el comentario de Philipp a continuación sobre esto).
Puede usar Application.persistentDataPath para obtener una ubicación de guardado confiable en cada plataforma. Esto normalmente se encuentra en una carpeta de datos de usuario que no se eliminará en casos como el ejemplo anterior.
Una vez que tenga una ruta para guardar, puede usar los métodos normales de C # IO para crear, escribir y leer su archivo. Los detalles variarán mucho según el formato y la estructura del archivo guardado, por lo que si tiene problemas, es mejor hacer una nueva pregunta que detalle qué está tratando de hacer y dónde está atascado.
En el sitio de Unity, hay un video que repasa las dos opciones principales para guardar (PlayerPrefs y crear su propio archivo para guardar). El video se puede encontrar aquí: http://unity3d.com/learn/tutorials/modules/beginner/live-training-archive/persistence-data-saving-loading?playlist=17117
fuente
PlayerPrefs es una tienda K / V diseñada para "simplemente trabajar" sin importar para qué plataforma construyas. Digo que siga usándolo a menos que tenga una razón convincente para no hacerlo.
fuente
Entonces, ¿la mejor manera es ahorrar en el lado del servidor? Convierta toda la información necesaria para guardar en cadena json y almacénela en un servidor mysql como datos de cadena y, cuando sea necesario cargar, conectarse al servidor y restaurarlo.
fuente