If you want to make games, I would advice you to not make your own game engine. It takes too much time and there is no way your engine can be as good as any of the commercial ones already available.
Viewing post in Beginning my journey as a game dev
C++, but the Visual Scripting makes it an extremely easy and powerful learning point which let's you not need to learn written C++ for a long while!
Though obviously, it really depends on what you want to make and for which systems, some engines are better designed for a specific kind of games than others, though it doesn't mean it's not possible to still do it. UE4 specifically is best for 3D games for PC and consoles rather than mobile/web titles and 2D games.
“There is no way your engine can be as good as any of the commercial ones already available”.
That’s wholly incorrect. The best engine for the game that you want to create is the engine created specifically for that game. You don’t need to implement all the features of an engine like Unity, because the chances of any one game needing all of them is pretty low. The engine created for your game will likely be a bad engine for any other game, but not for your game.