Provide a method for getting the internal plugin ID

As a Roblox developer, it is currently too hard to uniquely identify a plugin outside of the DataModel.

I’ve been making a tool for providing communication between plugins, one feature here is a singleton settings manager (for some cloud shenanigans but :3), for this to be viable, I need some unique way of identifying plugins. The internal ID accomplishes this.

I’m aware the name of a plugin is set to the internal ID of a plugin (except for plugins created through the legacy PluginManager), but this can easily be spoofed, just by changing the name, which means there’s no real reason to not have a safer method for retrieving this ID, that cant be easily spoofed.

I also cant just use the Plugin object itself for two reasons,

  • The Plugin object changes when you reload a plugin, this can be sort of fixed by renegotiating, but again, how do I know who’s who? The Internal ID is a static, unique ID for each plugin instance
    • I’m aware this may behave strangely with local plugins as it goes off the user_filename format, and you can just rename the file, but generally, this is safe for cloud plugins.
  • This transcends the DataModel and Studio, I cant export a Plugin as its instance, for obvious reasons.

If this issue is addressed, it would improve my development experience because I can then uniquely identify plugins and save and load information based on a unique string (the internal ID).

3 Likes