Thanks for the well written responses oosyrag, and Jase00
I really do need to refresh on Arrays, and hierarchies. I was much more agile with using them a couple decades ago, when I was 14 years old XD. Now I'm so used to the data structure in another game engine I was using. Similar to arrays, but rather than using columns/rows which are numbered. Creating each cell/block of data as it's own variable within that struct. So you can call it using the struct.variable(which pulls that variable from the structure of data). Similar to how Construct makes it simple to call instance variables from an object.
There are always 20 different ways to accomplish something that wants to be implemented. As of now, I've been using a lot of Parent/Child objects for everything. I'm currently working on an enemy state system, with multiple enemies, and multiple objects for each enemy(collision box, debug text, enemy object, etc). Along with tracking enemy state through the state machine. Then debug text, separate collision box, making sure that each one is switching states/animations, colliding properly based on EnemyBox object. Etc.
I'm not entirely sure yet, but using containers in this instance may be easier. As I can plop the same collision box for every enemy in the Layout editor, call the proper enemy type from the Family of enemies using an instance variable within the main object of the container. I feel like using containers, and having all the child objects automatically created and destroyed as a single object, should in theory cut down on Actions/Events along with using Family Objects. Would make it simpler in my mind, as how to have each enemy object react appropriately.
And, be more efficient, than how I am doing it now. Creating an enemy object from a family, then creating each child object. Setting each one to move to the appropriate offset compared to the parent. Setting as the child of the parent object. Then call the proper state/animation, using an instance variable in the Family. Maybe I am wrong. I'll find out either way, what works better for me personally, in this instance.
I just found out about, and began using Family Objects as well, which is really a shame on my part. I plan to make some time in the evenings this week, and read through the Documentation. Either way. I've got 4 different copies of the same project going right now. Trying to set up my enemy system to get the desired result, using different methods. I've got it mostly working in one instance(but it feels hacked together), and partially working in the others. Then see which method proves to be the most efficient in this instance. Just trying to become more efficient in how I approach different situations within Construct. I'm rebuilding a game, I threw together in 72 hours for the Ludum Dare. In that project file, I'm literally rewriting the actions/events for every enemy type, over and over. Just switching over to using a Family Object for the enemies, has cut 20+ lines of Actions/Events for their basic platform movement, down to about 5.
I do tend to overthink, overanalyze, and overcomplicate literally everything. I think way to much about things, and get in my own way constantly. Not only with development, but life in general. I still have a lot of areas to work on. Work/life balance especially, but this is going way off topic. Most of my confusion is probably from pushing, and trying to force things when I get stuck. Rather than walking away for a bit, and not get burned out with the issue.
I'll have times, where at 2am, I'll suddenly realize what the issue was, then jump back in and have it fixed in 5min. Where earlier in the evening, I was staring at it and changing things around for a couple hours.
Again, off topic. But, I should have just stuck out game development from the get go. I'd be so much further ahead right now. But, must take what I have today, and move forward. Adding onto that framework of knowledge.
I definitely appreciate the feedback. I'm ignorant in many areas. But, what is life, besides trying to improve and progress each day. Shining the light on the areas I am ignorant in by failing, gives me something to figure out/learn the next day. Which only spreads out further what I call the "horizon of ignorance". Learning through each failure.
Apologies if I've wasted anyone's time here. Take care. Peace out. Stay blessed. Have a great day. I'll see you all around. I've obviously got a lot more studying to do, and it'll never stop.