There are two different types of info that need storing and retrieving
-
Game data
-
Character data and progression
-
Game data is stuff that exist in the game. For example, the equipment and their properties, items (like potions), spells etc. Those are staple and always exist and have to be stored somewhere in order to be accessible.
-
Character data and progression is volatile data. That includes level, exp points, hp, mp, what equipment they use, what class they are what spells they have selected etc. Here is the data that typically goes into a “save file”.
(If there is any extra kind of data that needs to be stored please let me know)
So, what I’m looking for is the optimal way to store these. I have researched this here and there and this is what I’ve come up to so far:
a) Player prefs are generally to be avoided when it comes to so much information. What is your opinion on this?
b) C# Multidimensional Collection to Store and Retrieve Character Information - Unity Answers → I found this question while searching. It somehow tackles the problem but I didn’t quite get the solution. I understand that creating custom classes for every type of item or spell etc. and I’ll probably do that too but what I’m interested in is where I will save the PRESET item properties (like for example, Holy Sword: +25 atk, Holy element, Slashing damage type)
c) Someone said something about using a database like mysql. Is this the way to go? If yes where do I find examples on this and how do I link the database with the game? Remember this is for an OFFLINE game (so don’t start talking about servers etc). Also, making a DB on an exterior mySQL API and then importing it in the game, is that possible?
Thanks in advance!