I’m currently tackling my most important project and I want things to be as performant, scalable and robust as possible. I’ve gotten to the point I have to think about how I’ll hold, read and write the players data (think about the classic IntValue under leaderstats to represent the player’s coins).
I’ve thought about a couple methods but I’m unsure about all of them due to multiple factors:
- Folders and Object values, easy to detect changes with .Changed but writing .Value so many times ends up getting kinda annoying, specially after all the stuff you gotta write to get that instance in specific.
- Folders and attributes, same as object values but I also feel annoyed about having to write :GetAttribute() and :SetAttribute() all the time.
- ProfileService & Replica, cool, but too much of a hassle to use actively, personally.
- PlayerDataParser, allows you to modify player data as if it simply was a table, you only have to require the PlayerDataParser and call it on a player to get it’s data, the data can be accessed from all clients to read only, however I’ve been told about possible performance issues so I’m unsure (this has been the option most in my mind)
These are the ideas I’ve had in mind, I know I sound picky but I need a really comfortable and good system if I’m going to be working with it for years, if you can, please tell me which one of these methods you’d recommend, and why. (Also if you have other methods in mind, do tell me, I’m trying to find the best thing possible)
Thank you for reading.