As a Roblox developer, it is currently too hard to work swiftly in Roblox Studio because the tools I need are spread across multiple tabs in far-away locations, or reliant on plugins.
Some history for context
Back in around 2015 Roblox moved away from its old SystemMenu studio layout and introduced the RibbonBar studio layout. While SystemMenu had all tools in one single view with little bars you could move around, the RibbonBar sorted tools into separate, static tabs. A sizable portion of the developer community were unhappy with the loss of controls, for example as seen in this old topic and this old topic.
As a result, feature requests were made to let developers customize the ribbon bar layout, for example as shown here and here. This eventually led to the feature request being added to the back-then public Trello board, as per this comment, but it never came to fruition.
Allowing full studio customization is a very large task so I understand it may not be a priority, but throughout the past 8 years itâs been brought up again and again and again.
Why the current layout is not good enough
Fittâs law states that the time it takes to select a button depends on the distance from the cursor to the button and the size of the button. Currently, studio fills the ribbon bar with buttons from the top left corner to the top right corner. The most commonly used tools (select, scale, rotate, move) are almost always located in the top left corner. The quick access bar is placed even further into the corner with even smaller buttons which take longer to press. This slows down workflows.
Below is an image of the buttons I frequently press (highlighted in yellow) and there is a clear pattern that most of those buttons are located all the way on the left.
Below is an image of what my studio looks like, which I modified by editing the RobloxStudioRibbon.xml file.
I moved the tools I frequently need (select, scale, rotate, move) to the middle of the screen for easier access, all under a single tab as well. With this layout I am able to select things faster than before. This is what better customization would enable, however editing the RobloxStudioRibbon.xml file to achieve this is not great.
Editing the RobloxStudioRibbon.xml is not a great work-around
If you want to customize the ribbon bar, your only option at the moment is to edit the RobloxStudioRibbon.xml file. This is not great because:
- You cannot edit the location of plugin buttons.
- Every update (which on average is more than once a week) the file is âresetâ.
- You cannot keep reusing the same edited RobloxStudioRibbon.xml file because sometimes studio updates change the format of this file.
- This is not officially supported and might break at any moment.
The process of replacing the file also requires you to navigate to some obscure hidden AppData folder which is invisible on operating systems by default. I ended up automating this process somewhat with a Python script, but most Roblox developers wonât want to go through similar efforts.
Why customization is important
Customization increases development speed
I personally save upwards to hours of time each week with my personally customized ribbon bar layout. The tools I use are easier to access and I have to switch tabs less frequently because I put all my important tools under the same tab. This also makes it easier to build a mental model of the layout. I know that the âtop centerâ of my screen is where I find my important buttons. Mental models are vital to a quick workflow as youâll spend less time looking for buttons.
Customization brings new talent
The current tools Roblox provides by default in Roblox Studio are heavily catered towards certain audiences. Builders / artists / modellers have a whole âModelâ tab dedicated to them. Programmers also have their own tab - though it is only shown while a Script is open. But other talent like UI designers, animators and sound designers have maybe one useful button or plugin if they are lucky. Many of those creators have to keep switching to the plugin tab to access their tools.
No layout will ever suit all crafts. Thus, letting developers drag and drop plugins or buttons into other tabs decreases the friction certain audiences currently experience, letting them focus more on their craft.
Conclusion
There are very few developers who currently customize their ribbon layout by editing the RobloxStudioRibbon.xml file because the required approach is obscure and prone to breaking. Most developers are also unaware of this approach in the first place. However, once you do modify your layout a whole new world opens that is difficult to transition out of. You never know how good something can truly be if you havenât experienced it yet.
A quick workflow will beat many strong tools when it comes to building games quickly. You can spend a long time coming up with a ribbon layout which averages out the friction across all different types of jobs, but you can also let developers personalize their own ribbon bar to optimize for their own needs. And as Roblox grows to attract an even wider audience of creators, these customization tools become a necessity.