JSON API Dump should export default property values

Previously it was possible to determine default property values automatically by using a custom BuiltInPlugin that can read the default values for almost all Roblox properties (including {RobloxScriptSecurity} members).

However, it seems that Roblox is going to start restricting what plugins are allowed to be loaded into here :slightly_frowning_face::

image

Rather than go into a rant about this change, I want to propose that Roblox Studio’s JSON API Dump exports default values for properties. This is a necessity not only for my own tools, but for @LPGhatguy’s rojo, which is used extensively both inside and outside of Roblox.

This is the plugin implemetation that I’m currently using:

This is the plugin being used by @LPGhatguy:

Default values can be generated for these objects by starting a DataModel, instantiating each class, and reading what their properties are set to.

The JSON schema for these properties can be defined in a similar manner to how they are encoded in the XML file format. It may even be beneficial to utilize the systems for writing those XML properties to define their JSON formats.

I hope this can be addressed soon. Thanks!

8 Likes

Built-in plugins are meant to build in Lua functionality into Studio near C++ level access. These signature files are exactly what you think they are: strong proof that the plugin is built by Studio’s build process. We will begin turning on features to validate built-in plugins by signature over the next week and then restrict loading to verified plugins when we enable support for some cool new secure features.

In the short term, you will be able to continue accessing the APIs needed for JSON API Dump with a fast flag - it will disable access to the aforementioned cool new secure features. In the long term, I think we should find a better solution and Lucien and I along with others have kicked around a few ideas.

2 Likes