What is a good alternative to scriptable objects for storing lots of game data and setup data?
My current architecture is based on loading initial values from Scriptable Objects(SO). I use these SOs to populate the UI(sliders, etc) on various scenes. I then manipulate values in the SOs during gameplay to update the UI and save them out to file as JSON. The next time the game loads I want to now fill the SO with values from the saved json file.
While I am able to save out the values I am unable to deserialize them back from json. And since my SOs are nested and with dictionaries I can't use Unitys built in JsonUtility for serialization.
I am currently using Json.net but it is unable to deserialize back into an SO.
What is considered a good alternative to storing game setup data?