Using Unity Serializer, how to persist data?

I recently saw this Unity Serializer

I can figure it out for the most part. My only concern is. It doesn’t seem to like singletons and it doesn’t like things to have DontDestroyOnLoad.

In a nutshell, I have information that needs to be stored, i.e. lets call it resources.
I got:

  int r1, r2, r3;

There will only be these throughout all of the scenes.

I can have the LevelSerializer serialize to a string and load it back up. I am not sure if it is just me, but from observation it keeps creating the object and then destroys if duplicate.

Is there anyway to have the object persist through all scenes easily, could just be something I am being nitpicky about?

Another concern, lets say I have my resources serialized into a string. How do I pass this information to another scene? Only way I can think of it using PlayerPrefs, which is an indirect and unbiased way of communicating this information. However, I am hesitant to do stuff in player prefs because well it is just a plain text file. Perhaps, it is my responsibility to encrypt/decrypt the contents in PlayerPrefs.

Edit:
Reason why I am hesitant about writing to PlayerPref is because I don’t want the player to gain unfair advantage by modifying the values, obviously.

Read this thread on the US forums, it might answer some of your question. At the very least it shows an easy way of modifying the code to save not only in PlayerPrefs, but in a seperate file on HD.

Apart from that, you might want to rad up on Serialization/Deserialization and file I/O. It’s actually pretty easy to save and load data.