There are two parts in making a game, Game Design where you do all the character design, level design, artwork, animation and such and then there is Game Programming where you take care of the AI involved in the game and also make your own Game Engine (if you really want to; there is no need though). So there are two paths you can choose but no one is stopping you from going in both of them. I will explain what you can do for both the paths below.
So, this all depends on what kind of game you want to make. If you want to make simple games to be played on the mobile like “Hungry Hamster” (a game which two of my friends collaborated with a senior in making) you don’t need to be very good with art since the design is pretty simple and it can be done if you work a little hard. If you want to make kickass games like “Fifa”, “Assassins Creed” et al., you will have to be very good with character modeling at the very least. This comes with a lot of practice and it can be learned on your own but it will take time and patience. Or you could do a course from any of the numbers of institutions that are offering modeling or animation and such. Start by fiddling around and looking at tutorials of Blender and then decide on what to do.
Game Programming / Game Development:
This involves with taking care of the AI and other aspects of the game. This is usually handled by a Game Engine which you can use to make your game come together. Most famous and freeware game engines are Unity, Unreal Development Kit (you can release your games only for free; if you want to sell them, you need a license), CryEngine (same case as with UDK). I suggest you fiddle around with Unity first and get a feel for what a game engine is and does. Yes, you can make games with just the game engine. But if you really want to make games that are “awesome” you will need a fair amount of programming and there are no shortcuts.
Design & Media School in India: