Heya!
Sorry for the convoluted title. I’ve been using unreal engine predominantly for fooling around with environment art / VR and animations.
When it comes to the programming side of things I mostly use Godot (GDScript, think Python) and occasionally Unity (C#). While I am putting in a few hours here and here to learn C before diving into its superset C++ I realized that even if I were fluent in C++ and able to avoid blueprints in Unreal, there are some fundamental things about the engine that I simply haven’t yet grasped.
First of all there’s the amount of basic “engine systems” linking into one another in a project for example: G.A.S, Common UI and Chooser. Which in a blueprint heavy system require to pre-plan interfaces and generally which other systems need to have access to certain variables.
It’s been a few months since I last actually implemented logic into a project but I do remember that especially when considering RPCs and avoiding hard references, I at times had to jump between multiple different blueprints in ways I never had to when implementing logic via code in Godot or Unity.
I wish I could provide a more elaborate example but what I am essentially asking for is something akin to a cheat sheet on how to go about implementing more complex logic and systems. It essentially feels like creating plug-ins and components for logic is ultimately desired and there are a lot of data-types and “engine-specific” ways to go about things that the majority of tutorials never really touch on.
Of course, looking at the sample projects is rather helpful but there is a disconnect when it comes to more complicated player systems, rather than systems that utilize AI behavior, procedural generation and input systems.
Thank you for your time. I hope this question isn’t too vague in nature.