Add a PluginStorage service for plugins to store Instances in

How is this not a thing ever since we can make those plugins

But you also can place an folder directly into the data model that automatically gets deleted uppon run time but not in edit mode or across saves

this just an configration object added trough instance new to the game it survives studio reloads also what if every plugin creator should check or create this instance with this name and makes his own folder in here this would solve the problem for teh mean time

I should make an asset manager for plugins to use those instance and store their assets
  • yes
  • no
0 voters

Adding on to this, it would also be great if we could have a dedicated place within Workspace which would be hidden in the explorer, yet still rendered in the viewport. I have a plugin myself which allows people to drag things in 3D to make editing easier, but I have to dedicate an entire Folder in Workspace just to storing the parts used to display it. Worse than this however is the fact that as soon as any of these parts are selected, the entire hierarchy expands, making the explorer super cluttered with a bunch of internal objects.

Demo of what happens

As soon as I try to do anything, the explorer becomes a giant mess, ideally the user shouldn’t even know these exist.

Another point that I don’t think has been touched on enough is TeamCreate, as these instances are needed for us to replicate and save things between Team Create developers. For example, I have a plugin I use internally which lets me save everything related to the Lighting service, letting me swap between the lighting in different ‘zones’ easily, and in order to make sure everyone in Team Create can access these same settings I have to store these in Folders in ServerStorage, adding more clutter.

As an alternative solution, maybe a simply property such as Instance.ExplorerVisible could be added, ensuring regardless of where we need instances to exist, we can make sure they don’t add unnecessary clutter.

This sounds like a security nightmare. Any plugin (if it has script permissions) could just inject something into your game and you’d never know at that point because it could conveniently be hidden from the only place you could find it.

Is this not already possible by parenting Instances to something like DebrisService? While you can enable all services in the explorer, as far as I know most people don’t use this due to the aforementioned clutter it adds. Maybe there could be some other setting like this called Show All Instances or something.

Are scripts able to run there?

I believe scripts with a BaseScript.RunContext set to eitherEnum.RunContext.Server or Enum.RunContext.Client will always execute on either the client or server respectively, regardless of what container they’re in.

I am desperately needing something like PluginStorage at the moment. Either that, or a way to save information for the currently opened place. Dealing with developers potentially messing around with my folder structure is a bit of a pain.

Now that Instances can be Sandboxed, I would imagine this would be potentially easier to do.

1 Like