Mu blueprints are offensive to the Unreal Engine

So I am at the infantile point where I can make my imagination come to life in Unreal Engine with blueprints. But my blueprints feel like a strong network of complete hacks. I download some great blueprint solutions from the marketplace and they are so well-organized and intelligently designed. So can you guys help me understand where to go from here? What are some good tutorials for getting into advanced blueprint or just good blueprint design?

I have a suspicion that I will get into C++ eventually but organizing your code and making it functional…portable… and flexible seems to be a different direction from where I’m going. Have any of you been here? Where should I go from here? Thanks

That’s not so easy to explain. If you make your blueprints think about what you will Need. What should your blueprint do? And then you can try using object orientated Scripting. Also you can try to reorganize your blueprints. Make big a big node-salad to a small one. Take big sections and try to set it up in functions and call it from the main blueprint and so on.

If you learn c++: from that you can learn to organize your functions. Like i say, for me it is hard to explain. Till now, i don’t find any good tutorials for designing the blueprints. But with time, you will learn it. Sometimes you find a way to make a bp working better and easier then before. It’s like the Aha effect.

I spent 2.5 years coding in Blueprints.
First year I was prototyping: my blueprints usually turned into giant chaos spider web.
Then we recruited a professional coder. I taught him blueprints and he taught me the proper code ways.

Now my blueprints are looking way more professional.

It’s not much about learning blueprints than learning good programming ways and applying them to Blueprints.

I don’t know specific tutorials for this, but I do know what is the main topic of improvement: how to properly code in an object oriented code environment.

Here are the main points to keep your Blueprints clean and sustainable:

  • make getters function to retrieve variables
  • make setters function to set variables
  • develop and stick to a proper naming convention for everything (assets, functions, variables, events, dispatchers, components…)
  • prefer functions over events
  • function should do one thing and properly indicate what they do (‘VerbTarget’ and if they target self just ‘Verb’)
  • have a clean class architecture to avoid duplicate code & improve modularity
  • code factorization
  • use object oriented programming tools to their best potentials (things like function overriding, super calls, property inheritance…)
  • use correct object type to suit your needs (object, actor, actor component, structure, array, sets, tmap, interfaces, dispatchers, libraries…)
  • plan in advance, make tech design, make links between your class, what they do, what they need, with which class they communicate

And probably lots of other things that I’m forgetting.

All-in-all, develop a proper programmer background. Learn the proper programming ways.

Whether it’s time-worthy or not depend on what you want to do. Are you panning to release a game on your own? You are likely to need a well-coded game if you want to sustain it. If not well, you can keep prototyping.

Thank you both for some good direction. And thank you especially Yun for breaking down they key aspects of quality Blueprinting (or as it turns out, proper object-oriented programming). This will really help inform me as I decide what tutorials and avenues I want to focus on. I personally don’t want to just be a hobbyist as it doesn’t really demand a whole lot from me. I appreciate the input and having such an empathetic community.