Hello everyone! I'm currently trying my very best to develop a Danmaku game! I'm still early in this whole ordeal and I was looking for some feedback regarding how to properly design my Scenes in an efficient way.

The way I've set up my project right now, I have various bullet scenes which represent various trajectories and have various Generator scenes set up for each bullet type, as each bullet needs different parameters to be fully instantiated. My plan is to create a baselines of Generators and use their parameters in the editor inspector to create my patterns.

I have all the parameters editable on the editor, but I've run in a bit of a scene-explosion now - or maybe a parameter-explosion as the complexity of the generator increases. Right now it looks like this and I'm a bit unsatisfied. I'd like to add a burst option to the Generator, and burst is a type of behaviour that would require multiple parameters (isBurst / delay (between bursts) / number of shots) which would show up on the editor and make it slightly harder to read as well. Add in 4 more generators for Angular, Circular, Sinusoid, Laser - I don't really like how unreadable this baseline is becoming. From one side, the fact that scenes don't have their own icon makes it a bit hard to distinguish between all the generator types - from the other, I wish there was a better way to organize these different parameters in the editor, or even be able to condense all of the generator types into one and make the editor showcase the opportune parameters based on which Bullet object I make it instantiate, though I'd not be so sure where to start to customize the editor in such a way.

For the people who've had more experience with Godot, how would you handle this situation? Would you have a different scene structure? Would you advise against using the editor to design patterns? I'd love to hear any sort of suggestion.

I don’t have much advice really as it’s tough to say much about your project. Custom resources (which I assume is what you mean when you say “scene explosion”) are typically my go to, to a point. Coupled with scene inheritance, it’s possible to have a solid framework that describes behaviour in the editor.

That said, a custom tool that represents data (e.g. like bulletml) rather than the node/scene approach would be far simpler? Researching some existing projects may be of some help, and I can think of a few:

https://github.com/samdze/godot-native-bullets-plugin

https://github.com/Dark-Peace/BulletUpHell

https://github.com/spaceyjase/godot-bulletml-prototype (This one is mine)