Learning to program will take you about 5 to 10 years, depending on the amount of studying you do. Seriously, it is going to take a long time. It is not as simple as learning how to tell the computer to do something, you will also need extensive problem solving skills, the ability to determine which algorithm to use (and the ability to create algorithms and analyze them) and knowledge of a myriad of things I cannot possibly enumerate.
Also, before you have learned quite a bit, you cannot tell if a problem is simple or easy to solve. There are quite a lot of problems that will suddenly appear, for example problems with algorithm efficiency.
If you want to start, start by learning Python or C#. Those are relatively easy and modern. Do not even think about C++. C++ has more concepts than any other language and muddles them into one big steaming mess, and because there are lots of bad side effects that will suddenly crop up, be prepared to investigate mysterious errors. C would be possible, but it is quite harsh and the syntax is anything but nice.
Should you have learned a nice part of Python or C#, you can continue with Haskell (or ML or Lisp) and Erlang and JavaScript (or something equivalent; I do not know which languages will have the nice and shiny concepts in 5 years). Each of these will teach you something important. You can now continue with C, knowing all the concepts you have picked up before your programs will make sense, be beautiful and be fast.
Then you can work on algorithms and data structures. If you have got the guts to do it, read Knuth. Get better. And someday, make your game.
This is the path I should have taken. I started with BASIC, moved onto C/C++ (bad idea), onto various scripting languages (Perl, Ruby, PHP), onto functional languages (Haskell, Erlang). And now I am back at C and starting to work on my project.