To be honest I would stay away from either of those when you're just starting out.
CryEngine in particular... not good for smaller indie devs. That one... it's not made for "smaller" games. It seriously isnt. 3D game design is... let's just say, a hell of alot harder to learn and do. I've worked with 3D stuff before in the past... frankly, I've never liked doing it. 3D game design has issues.
Though, that also is somewhat up to preference. To me, most of the genres (okay, all of them) that I'm into are worsened when done in 3D, but that might not be the case for you. I will say though, there's alot of reasons why so many games are done in 2D nowadays. Even many games with 3D graphics are STILL 2D in terms of actual gameplay... they're just using 3D models instead of sprites. ....Also working in 3D is going to make your learning process WAY slower. Just trust me on that.
Now, Unity on the other hand.... eehhhh.
Remember that giant red blob of text I mentioned? The wall of gibberish? Yeah. The bit I DIDNT mention: The game I work on is running on Unity at it's core. That explosive doom blob is one of the screwball forms that errors can take with that. What *I* do is in XML, which is problematic enough. I'm only one member of the team though (there were about 10 of us originally, for the expansion it's just me and 3 others). My role is enemy/boss design & implementation and I balance the game's difficulty and fix room designs. And for whatever reason they put me in a position of authority so I can veto things made by others if I dont think they fit the game. Also I complain alot. What I DONT do is engine work, which is much harder than all of that stuff combined. THAT is the nasty, ultra-complicated part when it comes to development, it's NOT done in XML, and that sort of thing is the core reason why "simpler" tools like Game Maker, MMF, or Scratch were created... because they can either be used to work your way up towards the more difficult stuff, or they can be used as the base for your games to begin with, meaning that you dont need to go that far yet can still produce the results you want.
The stuff I do work on, it's difficult enough as it is. It seriously is. The learning curve was kinda mean, and the game itself is made out of about 5 bazillion seperate files... and I DONT mean art/music/sound assets. I'm talking about the things that make it run. Even just the XML files... there's probably about 150 of them in the current build. And that's only the start.
And that experience is part of why I say to stick with the simpler things when you're starting out.
But not just that technical stuff. One very important thing to remember: Learning to make games is NOT just about learning to use the tools. It's not just about learning to code or learning to create the art or whatever. The truly important aspect is to learn various aspects of game design, mechanics, and balancing. It doesnt matter how good you are at coding or whatever: If you get those three things wrong, your game will come out badly.
So, my suggestions:
1. Start out SMALL. Use the easier tools, like what you're already doing. Your first projects should be small games. Short things. You're not going for a big ambitious project here... these are a chance to make sure you understand the tools, but also to give you a chance to experiment with design aspects and game mechanics. But also, it gives you the chance to do these things while NOT over-complicating things. It makes you less likely to get overwhelmed right away.
2. This isnt required, but consider doing some testing. As in, working with developers that are also making games. Find games in the sorts of genres you have an interest in, and get to know how things work not in the finished product, but during the design phase as well. Of course, the difficult part is finding the right ones... when I say "testing" I dont mean just "buy the game and play it". It's more of getting to know the dev and actually working *directly* with them, and usually doing what I call "internal" testing. Which involves testing builds that arent available to the public (and you're often also expected to give suggestions for both new ideas and solutions to problems, as well as do some bug-reporting). How exactly you go about doing that, getting into that position, is for you to figure out... for me, I tend to find that it just sort of happens. I think if you go out there and just have a real go at it, interacting with the community, it might not be as hard as you might think. Again though, not required... I just think it really helps with learning.
3. Do you have some specific games that you feel like you're going to want to take inspiration from? Study them a bit. But also DISCUSS them with others that are also into them. Talk about the aspects of design, and learn from that. It's amazing how much insight can come from this.
All of that might sound like alot to take in, but seriously, if you take it at your own pace... even if that pace ends up feeling slow... so that you dont get overwhelmed, you can totally do this.
I mean, heck, if *I* can do this, anyone can. I'm absentminded as hell, easily confused, and I couldnt do math of any sort to save my life. But I'm still getting exactly the sorts of results the guys in charge wanted. You can definitely do this too, in whatever genre you're wanting to.
Even for the really small games out there though... alot of time, work, knowledge, and skill goes into them. It's NOT easy stuff. So go into it slowly and learn at a pace that works for you. Dont make the same mistake that I've seen too many people make and dive into the deep end without knowing how to swim. Seriously. That doesnt end well, and it's best not to find out why the hard way. "Rome wasnt built in a day", they say. Neither is a game. Takes bloody forever, really...