Integrate Rojo into Roblox Studio officially

Rojo has become a critical tool for the development of Apocalypse Rising 2. Source control and better editors have been huge quality of life improvements but the biggest draw to Rojo for me has been time efficiency. I work on a large-single-place game (613k instances, 405k parts in it’s most compressed format) and studio is not satisfyingly performant enough to handle working with large game files.

  • Play testing can incur anywhere from 30-60 seconds of “Wait for Roblox Studio to Respond” freeze ups per test. That downtime adds up and is time I’m spent locked out of being able to work. Features like StreamingEnabled can help bring those times down but usually come with some design quirks not suitable for all games.

  • Ctrl + P searching is slower than Ctrl + X workspace filtering even when filtering for just scripts. Actions like this should be lighting fast but they can take 5+ seconds to properly populate search results on larger place files. These actions are used very frequently and the time spent searching can add up.

  • I don’t work in team creates so things like drafts aren’t available to me. Being able to create and manage branches for prototyping is huge and manually doing that with offline/non-published games is a very tedious and clumsy process.

  • Loading times across the board with studio are abysmal. It takes 3 seconds to open VS Code and I’m immediately able to get working. 25 seconds to open my game directly from the .rbxl place file, longer to open studio first then file → open to get into my game. I don’t have a number for a TC for my game but opening a TC my team uses to organize assets can take minutes.

As a full time developer on a large game I highly value being able to quickly and efficiently complete work. Time spent waiting for studio to complete tasks can quickly add up and with tools like Rojo I’m able to take back a lot of the downtime I experience during a work day. I am all for better integration of tools like Rojo if it means even better ways to create and manage games on Roblox.

34 Likes

I share the same sentiment about the clear discrepancy between Roblox itself needing file syncing while not wanting to provide that feature to developers.

I wouldn’t even consider working on a Roblox project without using Rojo these days. It would be amazing to see Roblox accept how their developers want to work and embrace openness and compatibility between Roblox and third party development tools. There are a lot of things that just can’t be done with the existing solutions without Roblox’s help and official support.

Please empower us!

44 Likes

I typically don’t use Rojo in my work because I can’t be bothered adding additional complexity to my workflow and like keeping things simple. I can ship games like this without trouble, as far as I can tell (I don’t often work with other scripters in a single project). But really I’m just lazy and can’t be bothered dealing with third party tools that aren’t first class, however convenient they may be.

If this were actually to get proper support from Roblox so it doesn’t require as much work on my part to use, I would probably do so.

Just now I crashed Studio by putting a breakpoint in a RenderStepped callback. It was a dumb idea on my part. But I lost like 2 minutes of work and I am really sad, and have to spend another 5 minutes restarting studio and getting back where I was. I wouldn’t have lost those two minutes of work if I was using Rojo.

14 Likes

You can integrate vscode with Unity.
I don’t see why not with Roblox.

9 Likes

Every other major game engine allows external editing of code. If Roblox is at all serious about competing in that market, this feature is a necessity, not just a request.

76 Likes

This addition into Roblox Studio with a lot of developers using Rojo, including me with my future project, this is something I 100% agree with!

I don’t understand how this wasn’t added before when Roblox works with Rojo as well. This will make my workflow with studio a lot more efficient with developing many things such as scripts and modules, and maybe other things along with development. Before I used Rojo and git, it was a bit difficult for me with my work and workflow on what I work on and what I maintain inside studio, now with this having a lot of support and especially developers using it, this can change something for the better.

Nowadays, I don’t use Rojo as I am either busy or I don’t like having more complex things within my workflow a lot in certain days, and then some days I use Rojo for something complex with my team.

Agree here again.

Again agree with this, but when I see that Roblox also works with Rojo and doesn’t support it within studio, it makes me wonder why and confuse this isn’t inside studio and why it should, if Roblox does support this and works on it, why not add it and maybe announce it before, and maybe have developers access to FileSyncService for various reason? I got a bit too far here, so I’ll but in my conclusion.

In the end, I would like to see this as a reasonable tool and resource inside studio and the outcome of the community that will use it in the future and maybe when it’s out. :eyes:

7 Likes

I started using Rojo since January, and I can confidently say that by switching over I noticed a pretty significant bump up in productivity because how much smoother and easier everything had become. One of the biggest issues I had is when studio crashes I’d lose a couple of minutes worth of progress, that may not sound like a lot but it really can be if you’re zoned in and zooming through.

Ever since, I’ve helped a few other fellow developers get started with Rojo, while some did start using it and are super happy about it, others are still afraid of the idea of it because its not supported by Roblox.

I firmly believe that once Roblox supports external editors, file syncing and generally allowing developers the ability to grow themselves in the career or hobby they’ve chosen, that will lead to more consistent flow of new games and updates of existing games which in turn result in a much more growing and active player community.

As the Roblox Tagline says:

This is one of the bigger ways you can power that imagination.

24 Likes

I would definitely love to see this happen! Me and my scripters started to use Rojo in Tower Defense Simulator and all its done is increase our productivity. We need this!

16 Likes

I feel like this gets brought up every few months but is never officially commented on by Roblox. Using rojo is necessary to the workflow of myself as well as every top developer I know. I’m not sure why the company is so averse to it - really hoping that will change soon. Please, please officially support rojo!

17 Likes

I would highly support this. My entire workflow is based on Rojo and GitHub. The fact that it would be included in studio would make it easier for new developers to pick it up and make it easier for developers like me to hire people who have knowledge about Rojo.

Roblox studio could automatically generate .vscode folder and add VS Code extension which would allow native sytax highlighting and intellisense without any third party extensions and stuff.
In my opinion there should be a way to turn the entire place into files as well. Much like Unity or UE4 does it.

Also, Rojo repository was migrated to Roblox’s official GitHub profile so that might be promising.

4 Likes

This is desperately needed. While I don’t have collaborators who would need to access the scripts currently working on my game, I’ve switched to Rojo to make sure that my game is future-proof. The fact that I (and many others) have to switch to using a program that makes use of what Roblox could do is pretty poor. While trying not to nitpick at the flaws of the editor and the lack of useful tools within the Roblox script editor, there is definitely a need for a change.

The features that can be offered by using Rojo should be things that Roblox can work on, seeing as their workflow already includes as such. Plus, if Roblox wants to be a development platform, they need to ensure that they encourage developers to use industry-standard tools such as Git.

One of the main things I like about Rojo is the ability to use external editors. These editors (such as Sublime, Visual Studio Code, etc) are all widely used and for good reason too. Even the smallest and seemingly basic tools such as Replace All can be done from VSC whereas doing it in Roblox is extremely verbose.

5 Likes

After now using Rojo for a little under half a year now, I am almost unable to return to the script editor in Roblox. While a powerful tool itself, the options that VSC has allowed me to use and work with has drastically increased the output I’m capable of.

This isn’t to say that that transition has been without kinks; I was introduced to Rojo at the tail end of 2019 and gave up on it because I couldn’t understand how it’s structure worked. After working on a project that existed using Rojo, using Git, I’ve seen not only my code improving, but the speed at which I can create it.

While Rojo will not be everyone’s cup of tea, this will allow developers more options of what editor they use, what tools they wants to use and a wider adoption of industry practices. While not completely analogous, this would be akin to CSG → Mesh parts. One has features the other does not, incredibly robust - but not without flaws.

7 Likes

Agreed, version control using Git is industry standard, and Roblox’s tools just aren’t up to par. If Roblox wants to attract big studios making this integration easier and seamless would be a massive step towards that.

16 Likes

Fullflower Studio wouldn’t be possible without Rojo. It is frustrating that the exact tools we need are right there but aren’t being integrated into Studio. Git solves so many issues with managing large codebases but we have to go through hoops to use it.

9 Likes

I don’t use Rojo at the moment but I want to use it. Currently though, the install process is too confusing and seems hacky because Rojo isn’t officially supported in studio. This makes me, and possibly many other developers turn away from using it because they either don’t want to use something not officially supported by Roblox or don’t know how to install it.

If Roblox integrated Rojo into studio officially, so that it is easier to setup and work with, it will improve my developers experience massively. It will allow me to use industry standard code editor like VScode to make writing code easier and speed up my workflow. It will allow me to use industry standard version control systems like Git to work on multiple features at the same time with ease.

Please integrate Rojo into Roblox studio officially because words can’t describe how much it will help me.

7 Likes

Yeah, it’s definitely not for everyone and it took me quite a bit to figure out. Though after much confusion, I managed to learn how to Rojo a few days ago using this tutorial.

4 Likes

Roblox, instead of wasting time making tools that simply don’t give the same experience as existing, industry-standard ones, just integrate support for existing ones. I feel like when Roblox reinvents the wheel just so developers feel forced to use their tools instead it actually harms the development process instead of actually helping it.

Take drafts for example. They are a clear Git wannabe. I appreciate the effort being put into these tools by the engineers however these tools simply are not satisfactory enough.

I see Alvin_Blox’s point of view:

To power users, setting up Rojo is a piece of cake. However not everyone is a power user (like me) and they haven’t used command line or other stuff very often so to non-power users it might be somewhat challenging to set it up. I personally use it but I don’t even know if it’s the correct way, it just happens to work.

Native support for Rojo is a must. Roblox engineers won’t be able to even replicate the feeling of the tools Rojo opens the doors to any time soon, so they should instead save their time by providing native support for better, existing, tools.

Edit: let’s also not forget that Studio often crashes. I have personally lost days of work due to a crash. I can write my code in a better editor and that editor basically has never crashed. I can even code offline!

7 Likes

Roblox Studio actually reminds me of that one employee who always shows up late for work, never does their job properly, and when they first do their job, it’s so slow you want to do it yourself. Not just this, but it also feels like they don’t even want the job in the first place, and on purpose wants to annoy the heck out of you.

That, is Roblox Studio for me now. These days, Roblox Studio is only used when I have to publish the game I’m working on, and even that I have plans to avoid. With Roblox Studio, I’m limited. Want to write some code? Enjoy having “An unexpected error occurred and Roblox needs to quit. We’re sorry!”, where you can actually expect it to happen, and all you’re wondering is when, and how.

image

Rojo, my friends, is here to help. It’s literally the tool we need but don’t deserve (though, we actually deserve it). With Rojo you know what you write is being saved, that you can type as freely as you want, that you can do almost anything to improve your workflow, and that it works, consistently. Enjoy your favorite editor, git, NPM, TypeScript. All you need to worry about is if Studio crashes when you press the publish button.

9 Likes

Whilst I personally have no experience with Rojo, I have heard of it and heard of many enterprise/industry usages from contacts so far. I’ve yet to explore it - I hope more video tutorials are created to make setup easy and give a brief overview of it. I’ve only found one video on YouTube with very brief install instructions but not much more sadly. I will heavily still support any tool that integrates Git in any form directly into studio even via a third-party solution.

I’ve worked (and continue to work) on a large number of projects using Visual Studio and Visual Studio Code for jobs outside and inside Roblox and the direct GitHub integration in VS, VS Code is a godsend. It makes commits, history, and tracking for large scale projects a breeze. With a GitHub setup, it provides value to industry tools such as Microsoft Project for Gantt Charts - and may even serve as an attractive plus point for attracting and maintaining large and possibly enterprise-level teams.

Finally having any type or form of Git enabled offers a huge range of connected advanced features for experienced professionals to take advantage of (further integrating with professional industry collaboration tools like Microsoft Teams) and if someone wanted to get really advanced a integration with Azure but that’s far out of scope.

8 Likes

I’m in support of this feature as long as it doesn’t take away from the system currently available. Rojo is nice and so is Git, but there are some cases where I just don’t want to use either, and would much rather just have everything stored in Roblox’s cloud how it normally is.

Not too big of a deal but one thing I’ve noticed is that the more platforms outside of your own you start to rely on, the more points of failure you have. For example, as of right now GitHub is down, if Roblox were to strictly rely on GitHub services for pulling scripts and such, we could start to see more outages overall

EDIT: Buildthomas pointed out my misunderstanding in a reply and I now understand git is independent of GitHub and its services.

Although it’s entirely possible, Roblox would have to work really hard to make sure a system like this is stable and doesn’t conflict with their own services and operations. Thankfully that’s not our problem.

This is actually a somewhat valid statement. Suddenly throwing a feature set like this out at people will make things very confusing, especially for younger and newer developers. I believe the best way to implement this feature is to do so in a way that’s almost discrete, like its there for you to use, but if you don’t want to use it its no big deal. A non-invasive but obvious implementation would be ideal.

On the topic of external editors I like Visual studio but I don’t think Roblox should try and integrate that into Studio as some other platforms do. Relying on other companies’ services usually isn’t exactly ideal, as engineers would have to start writing code around some other company’s software and code, and that may restrict many feature implementations that may come in the future, and may result in more issues than it would solve. In the case of Roblox, If they can efficiently and logically develop their own software without creating something strictly redundant then I’d say do so.

So do I think Rojo should be a first-class citizen? Sure, as long as it doesn’t overcomplicate things and ruin the current workflow available.

4 Likes