IngameStudio | Roblox Studio running in a game [Pre-release]

IngameStudio

Github github-mark
Releases


A project that recreates part of Roblox Studio within the Roblox client, while emulating plugin functionality.

Introduction


This project was first conceptualized when i wanted the ability to edit unions in a live game environment. I felt that there were no in-depth, in-game editing tools other than F3X.

The main solution that came to mind was the ability to use Roblox Studio plugins in an active server, which would require the re-implementation of Studio services and other APIs. This led to the creation of PluginProxy, a core component of IngameStudio.

Key Components:

  1. PluginProxy: Recreates Studio APIs for plugins and provides a framework for implementing UI elements.
  2. IngameStudio: The default UI implementation using React Lua, mirroring Roblox Studio’s design.

PluginProxy’s architecture allows for custom UI implementations, offering flexibility beyond the traditional Studio interface.

More information can be found on the Github repo.

How It Works


This is an early release, functionality is limited

Current Features:

  • Ribbon bar
  • Ribbon tools
    • Select tool implemented
    • Framework in place for additional tools

  • Draggable, resizable widgets
  • Plugins
    • limited by API implementation
    • requires conversion

Plugin Compatibility:

  • Plugins require conversion for IngameStudio/PluginProxy compatibility.
  • Example plugins are available in the IngameStudio.Testing.rbxl file, found in GitHub releases.
  • PluginProxy-Transpiler automates part of the conversion process.

Getting Started


Testing:

Download the latest IngameStudio.Testing.rbxl from releases or check it out here

Installation:

  1. Download IngameStudio.rbxm from the releases page.
  2. Place the module in an accessible location (e.g. ReplicatedStorage).
  3. Follow the example setup from IngameStudio.Testing.rbxl, located in StarterPlayerScripts

For Developers:

Check out the Development setup section on Github.

Ending notes


As this project is still in its early stages, here are some ways you can help:

  • Bug reports: Submit issues on the Github, provide the Roblox Studio console log if possible
  • Compatibility requests: Share plugins you’d like to see support for, and I’ll see if I can implement it
  • Pull requests: Contribute to this project by submitting changes to the Github
  • Documentation: Suggest changes to the documentation for better usability and readablity
13 Likes