I’ve actually thought of making something simular.
All you’d really need is QT and C++ to make a basic thing which has an explorer and a property editor.
If you code all of it yourself (or use open source code) and you don’t use any trademarks its totally fine.
Creating a physics engine is too hard. I suggest you don’t try to make a working game engine but rather just a place & model editor.
You can also use QT’s 3D engine to render the game. Oh and Roblox Studio is also made in QT and C++
Here are a few things to consider:
Consider using the XML format. It’s easier to edit and and use than the binary format. Roblox also (may) have some patents on the binary format. And you don’t need to update the binary format.
Consider making your program extensible so that the default program only contains a basic QT window which has an instance explorer, a property editor and (maybe a script editor).
But make sure that people can extend your program in C++ easily in any way they wan’t including adding a 3D engine.
Make it so that your program does not by default have any API reflection but instead make it so that people have to import their own API reflection data in there (with a versatile data format). Here are some helpfull resources
Make the editing and handling of custom datatypes (Color3, Vector3, CFrame, Color3Sequence etc.) to be handled with custom user imported C++ code.
Don’t use the name “Roblox” a single time! Don’t even refer to it. Don’t use any of Robloxes code! Make sure when you use open source software that you have proper permission to use them.
Don’t try to reverse engineer any of Robloxes code and don’t use their binary format. It’s best to make a custom JSON format. Eg don’t make it a “Another Roblox studio”, just make it a general data explorer editor which can be extended.
Oh and BTRoblox has a model viewer which you can look for inspiration.
Hmmm… I dont think its the brightest idea for the following reasons:
Roblox will probably get the laywers ready if its a 3rd party app using the roblox name.
You would be recreating a thing that took multiple years with a pretty decent team to pull off. Yes i know you are not reinveting the whell but still it would be hard.
You just need to make a .rbxl parser that can: Edit, remove, create instances like scripts, models parts. Its questionable if these files are just fancy xmls or if they are encode or some proprietary format. But becouse rbxl to rojo exists i think its just a fancy xml.
Also you cant just make a fancy editor. You need a way to playtest the game wich would essentailly involve redoing the roblox game engine wich is a stupidly hard idea. Yes you could with some hacky way publish a private game and somehow integrate the existing roblox player to show in the window. Im pretty sure thats impossible.
Well the 3d engine would be really complex to program if you still want the games to be the same in the roblox player. It would invole redoing roblox as a whole basically.
This is probably a very bad idea. The game engine is coded in Lua for a reason. Also people would have to learn a lot of new stuff. Also Lua is very easy to interact with in C and C++
Retro Studio is a great game actually. I’ve played it a little and enjoyed it! I’d recommend it to anyone who gets bored on Roblox and needs an enjoyable game to play.