Unity to Unreal Engine 4: MonoBehaviour Analogue & Migration Help

Start here.
Simplest object in unreal is UObject. AActor is default level placable object. Pawn if default object that Can be controlled by PlayerController object. I strongly recommend reading documentation. System is pretty rigid in it assumptions of how it should be used and structured. But once you understand pattern you will appreciate how it works because it makes managing big projects very easy.

As for coding in C++, it is not actually that hard. You must understand and learn to never use “new” keyword, as well as learn to use pointers. C++ in UE4 is very forgiving as there is automatic GC, though manual object destruction is sometimes preferred. There are some quirks mainly tons of macros, and unreal specific templates like TSubclassOf, but It is nothing that can’t be dealt with.

I personally didn’t found C++ to be particular issue, even though my previous exeperince was simple command line application, and web development in C#.
I was able to create basics of RPG game, to the point I can now implement game mechanics in blueprints while C++ solves and hide more complex tasks. Like tracing, particle spawning, timers, events, dameging actors, destroying objects (in memory).

@up best way is to encapsulate this functionality in C++, as function.

You can as well create function in blueprint. When you derive another blueprint from blueprint where function is implemented it will be available in child bp.