Dataflow of all configuration data in the StoneDrop game
Operating procedure with the configuration data in a project:
1. All settings are made in Google Spreadsheets in a predetermined format (separate sheets of one table for different data: localization, levels, player options, game boards);
2. After the final data was set in the Google spreadsheet the Unity editor script runs for import of these data: the corresponding C#-objects are created, fields for these objects are filled with the necessary data, then these objects are serialized in binary files in the game resources folder;
3. After the import of all the data the manifest (text file) is created, where the names of all serialized objects are listed (unfortunately, I didn't find the way to get a list of all files in the resources at the runtime).
At the runtime, the manifest provides the file paths to deserialize the required objects. If an additional content is created at the runtime, it will be saved in the folder Application.persistentDatapath (here we don't need a manifest as the method Directory.GetFiles is available) as it is impossible to save it in the Resources folder.
I'll reveal more details about import from Google Spreadsheets and serialization in the upcoming posts.