I often find myself having several nodes that does the exact same thing, but at different positions within the hierarchy. I might have a node that is used to position other nodes in a certain way or display a commonly occurring graphic asset. When building these kinds of scenes the Id needs to be unique, which I either do by coming up with elaborate names, or what I do nowadays, type a string of arbitrary characters at the end the Id. It works, but doesn’t look too great. Here’s an example:
one_of_many_hud_containers_1 level_up_modal_reward_2_top_left_graphic level_up_modal_reward_2_top_right_graphic ... one_of_many_hud_containers_2 top_left_corner_noehyv top_right_corner_vosexo ...
In some cases this can be avoided by using templates. But working with several templates can be cumbersome as one scene is split over many files. Especially when I’m throwing together things to test or prototype I prefer to have everything in one file.
What I propose is to allow the user to enter the same Id for multiple nodes. Then during compilation or runtime append something to the node Id, much like how game objects created using a factory gets unique names. If the user should be able to access these nodes from the script, I guess other changes are needed. But most often I find that I never modify these types of nodes from the script anyway.