How do I know what nodes I have to use?

Well, yeah, the question is enough I think… I know how to program in C++ but and BPs shouldn’t be a problem, but I’m never sure what nodes I have to use and why I have to connect all nodes.

Wow, thanks for your answers (both of you)! You’ve actually answered all my questions but there’s still just one tiny thing I want to know (it’s probably just stupid): When scripting BPs, it seems like all nodes have to be connected like a, let’s say, section (what I mean is when you create a new BP class it already has starting nodes and in every tutorial I see they just connect more nodes to it). Couldn’t you just add other “sections”? And it was hard to choose which answer is the ANSWER I have to mark (I wish I could do both)
(I also think I’ve used brackets to often^^)

Thanks for your offer:)

Sorry for answering that late…

So, I’ve read through the tutorials and discovered the “General Scripting” page which explained the basics. And, like you suggested, I’ve tried create my own BPs. The connections get clearer by time.

I wish you (in teaching) and your wife (in learnig) success!

This is probably the most common question with anybody approaching blueprints and game design for the first time. I am currently teaching my wife UE4 and Blueprints and we spent the other day talking about this very topic. The first thing is to always identify what you are going to accomplish in a script. Then ask yourself if you know how to do this, or should you check out a tutorial. In the beginning tutorials are your friends. Also, UE4 has some great videos on their youtube channel. Eventually I found that I could remember the basics enough to attempt to write my own blueprint scripts, and remember most of the nodes. Though every new topic will teach you a whole new set, and their interesting needs. Your C++ background will be priceless as you will be able to follow the execution flow pretty easily. Any more questions feel free to always ask here on answerhub or even shoot me a pm if you liked my explanation, always willing to help.

it all depends on what you’re looking to do. on youtube there are endless video tutorial about BP scripting.
I only work on BP cause is kind of easier than C++ (I have no time to study C++, eheh)

this is a playlist made by Unreal Engine wih tutorial about blueprint scripting.

If you have a particular request, I may try to help you

Never hear that someone knowing C++ has trouble with BP… Well let me explain it in C++ terms roughly.

Left of a Node are Input Parameters right of it are Output Parameters.

White Wires are your Execution Flow and more or less the Scope you could say.

There are nodes without Execution flow you can imagine it geing the same as SomeFunction(GetSomeFunctionParam(GetMore())) more or less. Basicly before execution getting Data from another Function that also could get its Data from another Function all those Functions are pure Functions. (Docs can explain that Better I guess)

Light Blue Pins are generally Pointers to Objects.

Every other Color (*most not all) are Primitive types like int, byte, bool, etc. aswell as more Complex Datatypes represented in a Struct. In C++ there is just a single difference between class and struct but the Engine threats them as Data and not Objects if you want to think of them like that.

Memory Management and Garbage Collection is Handled for you so no worries there. Aswell as no need for Headers.

Thats more or less it. And remeber thats a rough Guide but should be more than enough for a C++ Developer to wrap your Head around BPs. And you can Right Click any Node and “Go to Code Definition” all nodes except the one you created are C++ Functions exposed to the BP System. Might be easier for you to look Behind the Scenes.

Are you referring to those three red nodes in the event graph?
those are nodes that are activated at a particular event (at the beginning of the game, when something overlap with a collision box withing the blueprint, etc.)
It all depends on what you need.
e.g. with this blueprint I want a mesh to move around.
I have a Begin play node wich let my enable input on this blueprint.
Then I’ve added an event node (Input action “Move”) I’ve set up on project setting.
as you can see, no every pin is connected to something; the “setactorlocation” node had red pins (red pin is for boolean) for which you can set a value (true or false) directly in the node.

In this other example I have a “BreakHitResult” node, which returns me many possible output and I can use as many as I want. I needed to know which actor as been hit by player gaze, then I only used “hit actor” output.

“event tick” node just repeatedly activate the following node at a determined time interval.
So I can keep checking whether player’s gaze is hitting something.
I hope I’ve anwsered this other question :slight_smile:

Now everything is clear! Thanks for your help!

No problem. PM me is you need something :slight_smile: