Save your player data with ProfileService! (DataStore Module)

that’s an solution, anyways how would i retrieve data info from the client? cause that also gives me errors.

Depends on your usecase, but I would suggest you make a post in #help-and-feedback:scripting-support, since that’s not necessarily related to ProfileService.

You can probably use a RemoteEvent.

I’m having issues dealing with DDoS attacks. When the server crashes it doesn’t seem to be releasing the profiles and makes it unable to load data in other servers. What should I do?

1 Like

I don’t think there is much you can do, I would just ask DevRel to whitelist your servers

1 Like

There’s no such thing as a ‘whitelist’ on servers.

Your roblox game servers are being ddosed? I made a solution what about this

edit: meant to specify on earlier post to find whitelisted servers

Wooow! I’m not super pro at roblox programming, i didn’t understand how to use data store, but this way is so easy to use! And also i was scared about data of some players will destroy sometimes, one of youtubers said that with this module script it will be fixed! Thank you so much, this helped me alot!

someone knows how can i change player data (using ProfileService) if player is not in game?

Use global updates to adjust their data when they rejoin.

This is basically the holy grail of data store modules. This will fix most of the data problems that have
plagued me with headaches and extra hours of coding. Thanks!

Does it use OrderedDataStores?

No,ProfileService do not use OrderedDatastore

Should I use this on datastores that can’t be duped? It sounds like a good habit to be honest.

I decided to rewrite my datastore scripts, and decided to use this as well instead of the default datastore API :smiley:

Is it possible to use ProfileService for global data stores that handle game content, not user based stuff? I wanna store game content, and be able to load the profile from multiple servers without any issues

Yeah, I’m pretty sure you can. I think I did for one of my games but I haven’t worked on that game in a while so I can’t remember.

Really depends on your usecase. In 99% of cases you won’t have conflicts using regular ordered datastores.

If you’re certain you can have conflicts, I would create a custom module that implements session locking. Other profileservice features won’t be needed either way.

I don’t know if using ProfileService for no user related data is a great idea.Could you explain your case ?

How would one go about doing a “deep” reconcile, i.e. a recursive reconcile of data?

For example, my data is structured like this:

{
    Name = "Whatever";
    HairColor = "Black";
    Gold = 100;
    Inventory = {
      {Name = "Item1"; Attributes = {}};
      {Name = "Item2"; Attributes = {
          Durability = 100;
      }}
    }
}

With the typical reconcile, if someone joins the game earlier on with the Inventory table starting as

Inventory = {
    {Name = "Item1"; Attributes = {}};
} 

instead of with Item2, they would never get Item2.

Would it be a good idea to manually reconcile this multi-layered table?

1 Like

What I like about this module:

  1. Unlike datastores, it can easily prevent data loss.
  2. I can create custom functions with it, such as money functions, or give functions, etc.
  3. It is very easy to use and reliable.