Generates the reflection database delivered as part of rbx_dom_lua and rbx_reflection_database.
- Roblox Studio
rbx_reflector generate [--patches <PATCHES>] [OUTPUTS]
rbx_reflector generate --patches patches rbx_reflection_database/database.msgpack rbx_dom_lua/src/database.json
- Locate Roblox Studio installation
- Generate API dump via
RobloxStudioBeta -FullAPI <output>
- The dump is written to a temporary file which we immediately read back.
- At this point, we have a lot of information like a list of all instances and their properties, including types!
- Generate a derived reflection database by merging the JSON API dump with artisanal heuristics defined in patches.
- Execute Roblox Studio to get information accessible to Lua
- Generate a place file with one copy of every instance in it. It has no properties defined.
- Generate a plugin file from plugin.lua.
- Install our plugin into Studio's
Plugins
folder - Start an HTTP server to receive messages from the plugin
- Start Roblox Studio, opening the generated place
- The plugin indicates over HTTP that Studio has opened successfully.
- The place is automatically saved on Windows or requires you to press crtl+s to save.
- Output the requested reflection databases in msgpack or JSON.