I agree, go to GameDev.net and read stuff.
You are asking a fairly generic question. It's like asking how to make a complete operating system. First of all, games are fairly hard to make. If you know enough to make one, then what do you need help with? Second, what kind of game engine are you looking for? Do you want a first person shooting game, race car driving game, or Pac Man/maze type game? It really doesn't matterb because I don't know where to get any.
My game days were short lived, but a couple of my friends stayed with it. They do not rely on anyone else's program for the sheer fact that no one usually gives out decent things for free. Plus the amount of code that would go into a game engine is going to be learned before you can really do anything with it. My friends wanted to do everything so they know that got a decent start and so they would know how everything works. I know their first game took over 2 years to develop.
To make characters, there are plenty of options. I used paint and drew some crap. The, I load in part of the picture (the part where my little character, often refered to as sprits, where). For animation of the characters, like walking, I loaded multiple images into an array. When the left arrow button was pressed, it would go to the next index (when it got to the end, it started back at 0) and it move so many pixels. It made it look like the guy was walking. You could use DirectX or OpenGL and make your characters in 3D. My friends spent a while on an image importer program that once programmed, it made adding characters a breeze.
I would start off with some basics, like make a ball bounce around the screen. Next add objects to make the ball bounce different. Thrid, make your mouse an object so you can screw with the ball. That gets you familiar with motion, collision detection, and some physics (the part I hated the most).