Ras, let me be really sicere with you. The framework nor the Engine will make any difference on your task. As i stated before, programming is about solving problems. You need to learn how to solve problems, and how to use google (no, really, every professional programmer use google, we don’t know everything).
So, as i know your background, i could say you are trying to build a 27 story building without knowing how to put a brick on top of another. Many of us here will tell that doing a andgry bird clone is not hard, its not really if you have all the knowledge… that knowledge is not just a free course online that you just read without excercising as a homework from your school. Learning to program is a thing of years, or at least many months.
when i had 15, i am 27 right now, i used to read a book about python, it is a really cool and simple(of sintax) language. But i wasnt able to understand what a string was, or a char, or an int was.
It took me 1 year to understand what a variable, a pointer and a function was. That mean, 1 year to learn how to read/write binary files, how to make functions, how to build basic stuff like an inventory of 3 or 4 fields. Basic calculations. Half of that time i used seudocode (That is, drawing in a paper simbols like a little house that meant an ‘If’ branch, for example)
It took me 1 year to understand what indirection was, what a double or a triple pointer was, what a pointer to function was, how to create space in memory for all the data types C has, how to create a maxtrix with pointers in the heap. It took me more than a year to understand and do my own data structures like lists, queues, trees, graphs.
It took me more than a year to understand what POO is (and i am still learning, you never know enough).
I have programmed hundreds, or thousands of little programs and a couple of big and complex ones.
Aside of learning C++, i learnt Maths, REAL maths, not just inequations or how to resolve X. I talk about matrix, 2D, 3D, 4D, Vectors in different coordinates and spaces, Quaternions, Eulerian Spaces, Change of basis of different spaces. I talk about more real maths, like derivatives and integrals in multiple spaces with multiple variables. I have 2 years of university level physics. I know for sure many here knows A LOT more than me, thats granted. And let me tell you, all that info is REALLY usefull in gaming, you can do Anything knowing maths in the gaming world.
Most of us here know more than one language, the most common probably C++, Java, C#, C, VB, Python, LUA, Javascript, ActionScript, plus many others.
Ofcourse it will be easy for us to make an angry bird, we just have to learn how to use a new library function, cocos in this case.
So, you wanna make an angry bird clone knowing nothing. You wont be able to do it with C++, nor with Lua, nor with Godot, nor with Node based programming languages (Like game maker for example). What you really need is to sit down in front of your computer, grab Kernigan & Reachie’s Book of C, and start learning something, a hello world for example. You need to start simple bro, REALLY simple, and you wont learn overnight.
Most of the time, the problem is not the language nor the framework, but the person trying to do something there and failing because of many factors, like the lack of real knowledge.
Programming is not just writting printf(“Hello World”); Programming is learn how to overcome problems. You can ask on the way, if you know what to ask, and proving you have something to show to the people trying to help you.
You wanna learn to drive? just jump in your car and learn how to use the 3 pedals. Then learn how to use the clutch, then how to turn on the car. You wont start racing in Indianapolis.
Here is the same. In my opinion you have a lack of knowledge. That by itself is not a problem, you can learn, but you need to learn something of your level. Probably a game engine is not at your level yet, you dont know what a class is for example.
In my opinion most of the engines out there are good enough. I am in love with a little one named MiniWin, it has les than 20 functions… you can handle inputs, you can print something on the screet, draw 2 shapes (circles and line segments). And with just that you can do EVERYTHING for a basic game like an asteroid. Lets say MiniWin is a .22 cal bullet… Cocos2D is a Tomahawk missile with the potential to make you win millions of dollars with a game. I would say the same of Godot or any other game framework. The problem is… do you know how to handle a tomahawk? wouldn’t it be better if you start shooting .22 cal pistols first ? I am not saying to use such or such framework like MiniWin, i am saying start simple.
I see you have many cool ideas, we all have cool ideas, we all wanna build the next Fornite or the next MMO. But You need more than ideas, more than papers. You need to start giving a fu*ck about planning and imagining games in your mind, and start programming basic stuff… like a main with a printf and a multiplication inside for example.
THen we have the discussion, X language is easier than Y. Godot Vs C++ for example… neither of them are easy… Not even MiniWin is easy, you need to know how to solve problems, you need to think with an algorithmic mind. What most people mean with easyness , in my opinion, is just the sintax, and how easy the framework makes you the different things you have to do in your everyday life as a programmer. Syntax is just like Spanish(my language) and English (What i try to learn lol). Both are difficult to learn, not because you can spell vocals easier in one language that means its an easier language. I hate from english for example that you dont spell a word the same way you type it, i am learning tho, i do speak it, i can communicate. The same is with programming, Javascript is easier in syntax than C++ for example, that doesnt mean its better or worse than C++, you need a lot to learn and master javascript. The same with godot.
In C++ you type
ReturnType ClassName::MethodName(Type&name for parameter){}
In Javascript its just
Function helloWorld(var name){}
Again, it is only syntax.
I would suggest, stop drawing in papers, stop planning projects, stop imaging games in your mind, stop looking for easier languages, stop everything, download Kernigan & Ritchie’s book, and start coding… Download Codeblocks, download anything, but start coding. If you start today, tomorrow you will have a lot more than what you know today. I bet you, you will learn… If you are dedicated enough, in 3 or 4 months you will learn how to program things, i dont know if you will learn games in 3 months… but anyways, you wont be stuck here like you are now, and in maybe 3 or more months after that you could learn basic games.
Just Start learning, keep it simple, keep the passion up, ask more questions, seek for help about your doubts… but start typing things in your IDE. Just start doing something. And stop planning projects, stop looking for shortcuts, there aren’t anyone.
Well i am done, it took me an hour of writing my feelings, always with my most sincere respect and humbleness. I am not a master here, i have 7 days with cocos and i haven’t event scratched its surface.