I am creating a very large in scope and very complex RPG game that plays similar to an MMO with the complexity of something like TES:Daggerfall that requires massive amounts of data to be saved, and uses the teleport service to travel between many different worlds along with many dungeons, and I am worried that I will not be able to save it all.
I have looked at the documentation and other forum posts, but I have heard a lot of conflicting information on how much datastores can save. I heard that the limit is 4MB per key however I am not sure how much that really gives me when it comes to saving data, and I want to know how much I can get away with saving.
Things I need to save:
Items and their amounts
Skills Equipped (There are only 4 slots)
World Specific Event Triggers (Npcs that you have met and specific important information in dialogue with them)
Interdimensional Event triggers (In case I want Npcs to Reference things that happened in other worlds)
Honor (for a separate pvp game mode level)
World Specific Quests completed
Interdimensional Active Quests how far you are into them
World specific Active Quests and how far you are into them
Dungeons completed, how fast you completed them, and what difficulty
Reputations for each faction factions (number between -3000 to 3000)
vehicles and customization
owned hats and cosmetic stuff
Where the player is located when they left the game and what world they were in
Most of this data only needs to loaded once when the player joins, and needs to be saved when they leave. However some specific data will only be accessed when the code specifically needs it. It will only be loaded once and put inside of a folder in the player so that I can be accessed later on without having to get the data again while in the place. Another thing to note is that there is specific data stored for specific worlds or parts of the game.
Ex: Dungeon Data is only saved while in a Dungeon and World Specific Quest are only loaded and saved when inside of that world.
Taking into account that everything is compressed and optimized to the best of my ability, and is only saved and loaded when needed. Could I get away with saving all this data? If you think its not feasible, are there any other workarounds that don’t Involve the HttpsService?