I want to be able to double click on any output in the output pane (especially red error text) and have Studio open the script and set the cursor to the line number that is outputting that text or erroring. This is one of my most-used debugging shortcuts in Visual Studio.
For example, clicking on the red text in this screenshot should open the script ProductDB and move the text cursor in the editing window to line 81.
I’m not familiar with that syntax. Does that load a script asset id and run it?
If so, and if there is a bug in that script, I still would want double clicking on the output to take me to the script source. In this hypothetical case this bug is still stopping my game from working and so needs attention, right? Unfortunately a fix in this case would mean forking some standard library which means my game is now brittle in the face of future Core script updates. So I’m in a bad place.
Modules required that way can be required by any person on ROBLOX, even if the asset is private. The source is private though. I imagine Spacek is concerned that you’d introduce the ability to view the now-private source of modules by trying to make it error and then opening it.
That being said, you can’t require private modules you don’t own in Studio, so there wouldn’t be any issue. As for the error for trying to require a private module in studio, clicking it could just do nothing, or open a popup similar to the one you get when trying to edit the LinkedLeaderboard in the toolbox:
Uh, I guess it does? The procedure is you publish a module script as a model and then you require() it with the model ID. Modules can be owned by you or owned by others and closed-source, see Documentation - Roblox Creator Hub
And the fact that someone can literally do everything they want when you require their module. They could wire tools into your game so they have admin commands, or to teleport all players to a different game, or to serialize parts of the game and upload them to a server without even needing a third party program, etc.
Here’s an interesting discussion on the question if it should be removed as a feature or not: