Someone told me online that I should check out Unreal Engine 4, as I have pretty much used Unity as a professional game engine. So, I did check it out, downloaded it and installed necessary files. I noted that I could not use the game engine properly on my laptop since it was too demanding. My laptop does not have a graphics card which probably is the biggest explanation to why. Anyways, it did work on my desktop computer. I set up some example programs and looked up an Unreal tutorial series on Udemy. There was a sale in January 2020 where all courses only cost 119 dollars instead of their normal prices. So, it was not really a big deal buying one. I did not follow all the videos completely, but I did notice some peculiarities. In Unreal Engine, you can apparently only have one animation per skeleton. Clearly, it would be much better if an animation could apply to any skeleton. This is a major issue, but I guess it's not much easier in other engines either. Unity has a technology they call Mecanim that allows the same animation to be used on different models. When I tried Mecanim, I did not get 100% desirable results.
I fast forwarded in the Unreal tutorial series. It appeared to me that at least 50% or more of the development process when using this engine involves setting up something called Blueprints. This is not programming, but instead a copy/paste process where you connect dots. While it could probably be used efficiently when creating games, it poses no intellectual challenge that I can appreciate. When you do everything from code, you get to solve puzzles in your head. Only connecting dots however quickly becomes very boring in my opinion, and it's not something that I am interested in spending a lot of time doing at all. Also, most of the tutorial heavily focused on technologies that are heavily coupled to the Unreal engine, for instance when creating multiplayer, you seem to heavily rely on existing functions only for the engine. This makes it very difficult to separate code logic from the engine itself or have detailed knowledge about how the network programming works. Maybe I haven't seen enough videos about this, but so far this is the overall impression that I got.
The dilemmas that I am considering as for today are what type of game I should try to make. While a 3D game is fully possible, it would require a lot of animations, and I am not interested in creating animations. It would be helpful to find an animator that works for free, but that is not a reasonable thought. I know that a character should be cosmetically customizable, because if it isn't there is little motivation to level up or use money in a game. By having upgrades games quickly becomes addicting. This is sort of what I want to achieve, make a game addicting.
Intuitively, I strongly believe that I perhaps should go back to creating 2D games, either completely from scratch or by using Unity where I get to do more coding.