Proper place to store developer only data as a Roblox Studio plugin?

I am currently building a plugin to Roblox Studio. This plugin needs to store data that is accessible to the developers using the plugin in Roblox Studio and needs to be shared between the developers. But it is irrelevant to players playing the game.

One example of such data could be “Part History” that you have accessed using the plugin or similar.

Where is the proper place to store data that should be available to plugins but not to be included in the game itself?

I was thinking of storing it in script files located in “ServerStorage” in lack of a better place, the Datastore could also be an option.

I don’t know of any ways to make a data store exclusive to plugins but what you can do is just give it such a unique name that it wouldn’t matter? Or instruct your plugin users to not use the data store name? Those are just a few ideas

1 Like

There’s no way to store plugin-only data so your best bet would be setting up an external database if you plan on logging part history per game in the plugin or use datastores and just store part history and have the plugin go off of the current game the studio is editing.

1 Like

I’m against using DataStores for this purpose for a few reasons:

  1. DataStore operations are asynchronous, which is a pain to work with.
  2. DataStore operations are rate-limited, which, again, is a pain to work with.
  3. DataStore operations can fail.
  4. You can’t just copy-paste your plugin’s settings from one place to another if you’re using DataStores.
  5. You can’t store instances in DataStores.

I generally just shove it inside ServerStorage. Roblox doesn’t provide us with a better place to store per-place settings, sadly.

2 Likes

Thank you for the input - I will go with the ServerStorage for it then.

I think it will turn out OK!