Describe the project you are working on:
I'm constantly making small prototype test scenes as tests for my main projects, or if I am unsure how a Godot feature works and I want to test it isolated from anything else.
Describe the problem or limitation you are having in your project:
When creating those small test scenes, I usually work on it for a few hours to a few days.
During that time, I have always have to use "play scene" or F6 instead of regular play project.
This fucks with my muscle memory a lot. No matter how hard I try to concentrate I run the project (the main scene) instead of the current scene many times over, closing the wrong running scene, hitting "play scene" again. Often I miss-click a second or sometimes even a third time.
This becomes even more of a problem the more you switch back and forth between your regular projects and test scenes.
When I change back to my regular project definitively, I often have the same problem in reverse.
The solution would seem simple: Just change the main scene in the Project settings, and always hit play!
But usually I try to do these tests as quickly as I can, changing the main scene by clicking through the Project settings a number of times a day to change the main scene back and forth, is something I would really like to avoid. Often I have to come back to these test scenes as I realised I haven't figured out something quite yet as I thought I would.
Describe how this feature / enhancement will help you overcome this problem or limitation:
Changing the main scene through the RMB context menu in the filesystem panel would make the process incredibly painless, effortless and quick. No more fucked up muscle memory.
Show a mock up screenshots/video or a flow diagram explaining how your proposal will work:
In the Filesystem Panel: RMB click on any .tscn file and leftclick on "Set as main scene"
Describe implementation detail for your proposal (in code), if possible:
Impossible.
If this enhancement will not be used often, can it be worked around with a few lines of script?:
It would be used often I believe by people who experiment a lot, by people who learn the engine, by people who want to try out different things quickly, by people who have had the same frustration with their muscle memory.
Is there a reason why this should be core and not an add-on in the asset library?:
It's too small of a UX improvement to justify a download in the asset library.
When creating those small test scenes, I usually work on it for a few hours to a few days.
During that time, I have always have to use "play scene" or F6 instead of regular play project.
You can press F5 and it will ask you to choose a main scene, which will then be persisted to the Project Settings. If you only have one scene saved, you can even press F5, then press Enter twice so you don't have to move the mouse.
I think the current workflow is fine as it is.
i might misunderstood but what i understood was it's about more than one scene and have a main scene setting already.
making it easy to switch main scene.
Whether it's useful or not it depends. I recently found myself switching the main scene few times in two projects in short time, so this option could come in handy. But it's not something you do often, just a couple of times per project (like you make game scene, but then you want title screen and then you make a splash screen scene; it's not like all of these exist from the beginning). Another use is when you want to make a quick build with temporarily different main scene. Also it could be useful for the problem described in the OP - you might be working extensively on some scene that you need to run often, but at the same time you work on multiple other scenes instanced there, so every time you want to run the game, you need to switch to that particular scene and it disrupts the workflow.
While all I wrote above might be trivial, the implementation is trivial too (just 15 lines), so it's not like it hurts having it in the editor anyways.
I switched main scene when developing game and addon at the same time.
because it's not easy to debug in editor itself.
@volzhs yes exactly!
@Calinou this is not about setting the main scene for a project the very first time. This works brilliantly by just pressing the play button or F5 and then just selecting a scene.
This issue is about finding a quick and easy way to change what the main scene is once it already has been set without having to clicking through menus. Right clicking on any tscn in the FileSystem Panel would accomplish that.
It's a good idea, I've wondered at times why there wasn't a context option for it.
Some of my projects have had multiple startup scenes that launch differently using special parameters. They're used for easier testing.
This feature would be handy in those situations, as it spares a lot of switching in and out of Project Settings to reconfigure it. There are other ways of fumbling about as well, but that gets a bit lengthy to express.
It's just nice to have a quicker assignment of what a hotkey will perform.
F6 is for previewing the current scene you are editing, F5 is the main scene (one that is loaded on export).
Most helpful comment
i might misunderstood but what i understood was it's about more than one scene and have a main scene setting already.
making it easy to switch main scene.